As noted previously in the link from Xan, when you have more than one overlay variable the "jitter" is too large. As Thierry mentioned you need to stack your data. Here's an example with two Y variables. Done in JMP 18 Early Adopter, but will work in versions 14, 15 and 16 as well.
Here's the graph. Note the too-large jitter. If someone knows how to remove the jitter please let us know!
Here's the code.
dt = New Table( "Error Bar Demo", Add Rows( 12 ),
New Column( "Interval", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6] )),
New Column( "Y", Numeric, "Continuous", Format( "Best", 12 ),
Set Values(
[12.437490886321333, 37.199168332879417, 37.156578932774323,
35.050996731864814, 30.322353371355184, 8.0614203454894433,
3.859910964720414, 12.621146398655515, 17.191849953970209,
10.367196216467057, 12.039757956273382, 3.45489443378119] )),
New Column( "LCL", Numeric, "Continuous", Format( "Best", 12 ),
Set Values(
[7.2927397683889579, 25.642305959980376, 26.50551265292761,
25.263402819677477, 21.688274852565598, 4.2492252022016492,
1.3434215718643505, 6.4065309646179331, 10.278623145692858,
5.4646141190032171, 6.907533049594635, 1.2024577129570946] )),
New Column( "UCL", Numeric, "Continuous", Format( "Best", 12 ),
Set Values(
[19.718075997278717, 52.024792167595514, 50.529174751416292,
47.259229019802909, 41.144254937530874, 13.798954022840528,
8.5769036465305053, 22.175341545759608, 26.863128886056295,
17.745813740731023, 19.39599547859639, 7.6769378719651895] )),
New Column( "Label", Character, "Nominal",
Set Values( {"BTD", "BTD", "BTD", "BTD", "BTD", "BTD",
"DI", "DI", "DI", "DI", "DI", "DI"} )
)
);
dt << Graph Builder(
Show Control Panel( 0 ),
Variables(
X( :Interval ),
Y( :Y ),
Y( :LCL, Position( 1 ) ),
Y( :UCL, Position( 1 ) ),
Overlay( :Label )
),
Elements(
Points( X, Y( 1 ), Legend( 15 ), Jitter( "None" ) ),
Line( X, Y( 1 ), Legend( 17 ) ),
Bar( X, Y( 2 ), Y( 3 ), Legend( 18 ), Bar Style( "Interval" ))
),
SendToReport(
Dispatch( {}, "Interval", ScaleBox, {Label Row( Show Major Grid( 1 ) )} ),
Dispatch( {}, "Y", ScaleBox, {Label Row( Show Major Grid( 1 ) )} )
)
);
If you stack your data and follow Xan's directions you'll be able to do this without writing JSL.