Voici un script qui devrait créer le graphique (surtout, il ne corrige pas la légende)
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]}
)}
)
)
);
Les choses importantes sont la définition de variables pour le générateur de graphiques

et personnaliser la proportion de largeur de chaque segment de barre pour qu'elle soit beaucoup plus petite

et tu te retrouves avec

et si vous avez besoin d'une classification, j'envisagerais peut-être de modifier le marqueur