Ecco uno script che dovrebbe creare il grafico (per lo più, non corregge la legenda)
Names Default To Here(1);
dt = Open("$DOWNLOADS/Points.jmp");
dt << Clear Row States; // to remove labels
new_col = dt << New Column("Row", Numeric, Ordinal, Formula(Row()));
new_col << Suppress Eval(1);
gb = dt << Graph Builder(
Size(1076, 744),
Show Control Panel(0),
Variables(Y(:VA), Y(:WA), Group X(:Type), Overlay(:Row)),
Elements(
Position(1, 1),
Box Plot(Y, Overlay(0), Legend(8)),
Points(Y, Overlay(0), Legend(10)),
Bar(Y, Legend(12), Bar Style("Float"), Label("Label by Value"))
),
Elements(
Position(1, 2),
Box Plot(Y, Overlay(0), Legend(9)),
Points(Y, Overlay(0), Legend(11)),
Bar(Y, Legend(13), Bar Style("Float"), Label("Label by Value"))
),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{DispatchSeg(BarSeg(1), {Set Width Proportion(0.00005)})}
),
Dispatch(
{},
"Graph Builder",
FrameBox(2),
{DispatchSeg(BarSeg(1), {Set Width Proportion(0.000001)})}
),
Dispatch(
{},
"Graph Builder",
FrameBox(3),
{DispatchSeg(BarSeg(1), {Set Width Proportion(0.000001)})}
),
Dispatch(
{},
"Graph Builder",
FrameBox(4),
{DispatchSeg(BarSeg(1), {Set Width Proportion(0.000001)})}
),
Dispatch(
{},
"Graph Builder",
FrameBox(5),
{DispatchSeg(BarSeg(1), {Set Width Proportion(0.000001)})}
),
Dispatch(
{},
"Graph Builder",
FrameBox(6),
{DispatchSeg(BarSeg(1), {Set Width Proportion(0.000001)})}
),
Dispatch(
{},
"400",
LegendBox,
{Legend Position(
{8, [0, -3], 10, [2], 12, [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
19, 20, 21, 22, 23, 24, 25, 26], 9, [1, -3], 11, [3], 13, [-3, -3, -3, -3, -3,
-3, -3, -3, -3, -3, -3, -3, -3, -3, -3, -3, -3, -3, -3, -3, -3, -3, -3]}
)}
)
)
);
Cose importanti sono l'impostazione delle variabili per il generatore di grafici

e personalizzare la proporzione della larghezza di ciascun segmento della barra in modo che sia molto più piccola

e alla fine ti ritrovi con

e se hai bisogno di una classificazione, forse prenderei in considerazione la possibilità di modificare l'indicatore