CIAO,
Come posso personalizzare il colore di sfondo nel Costruttore di grafici per mostrare 4 quadranti diversi (ad esempio, il quadrante 1 è un colore diverso dal quadrante 2, che è un colore diverso dal quadrante 3, ecc.)?
Grazie!!

JMP consente di aggiungere primitive grafiche a qualsiasi output grafico all'interno del sistema. Quindi, per produrre il grafico seguente

Basta fare clic con il pulsante destro del mouse sul grafico nativo e selezionare "Personalizza". Viene visualizzata una finestra che consente di aggiungere uno script al grafico.

Puoi quindi prendere il grafico modificato ed eseguire un salvataggio del grafico che sarà simile a:
Names Default To Here( 1 );
dt = open("$SAMPLE_DATA/big class.jmp");
Graph Builder(
Size( 528, 456 ),
Show Control Panel( 0 ),
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 5 ) ) ),
SendToReport(
Dispatch(
{},
"weight",
ScaleBox,
{Add Ref Line( 110, "Solid", "Black", "", 1 )}
),
Dispatch(
{},
"height",
ScaleBox,
{Add Ref Line( 60, "Solid", "Black", "", 1 )}
),
Dispatch(
{},
"Graph Builder",
FrameBox,
{Add Graphics Script(
2,
Description( "" ),
Transparency( 0.5 );
Fill Color( {1, 1, .5} );
left = Current Report()[axisbox( 1 )] << getmin;
top = Current Report()[axisbox( 2 )] << getmax;
right = Current Report()[axisbox( 1 )] << getmax;
bottom = Current Report()[axisbox( 2 )] << getmin;
Fill Color( {1, 1, .5} );
Rect( left, top, 110, 60, fill = 1 );
Fill Color( "red" );
Rect( 110, top, right, 60, fill = 1 );
Fill Color( "green" );
Rect( left, 60, 110, bottom, fill = 1 );
Fill Color( "orange" );
Rect( 110, 60, right, bottom, fill = 1 );
), Grid Line Order( 1 ), Reference Line Order( 3 ),
DispatchSeg(
TopSeg( 1 ),
{Set Script(
Transparency( 0.5 );
Fill Color( {1, 1, .5} );
left = Current Report()[axisbox( 1 )] << getmin;
top = Current Report()[axisbox( 2 )] << getmax;
right = Current Report()[axisbox( 1 )] << getmax;
bottom = Current Report()[axisbox( 2 )] << getmin;
Fill Color( {1, 1, .5} );
Rect( left, top, 110, 60, fill = 1 );
Fill Color( "red" );
Rect( 110, top, right, 60, fill = 1 );
Fill Color( "green" );
Rect( left, 60, 110, bottom, fill = 1 );
Fill Color( "orange" );
Rect( 110, 60, right, bottom, fill = 1 );
)}
)}
)
)
);
Tuttavia, esiste una forma più semplice che la maggior parte dei programmatori trova più conveniente
Names Default To Here( 1 );
dt = open("$SAMPLE_DATA/big class.jmp");
gb = dt << Graph Builder(
Size( 528, 456 ),
Show Control Panel( 0 ),
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 5 ) ) )
);
report(gb)[FrameBox(1)] << add graphics script(
Transparency( 0.5 );
Fill Color( {1, 1, .5} );
left = Current Report()[axisbox( 1 )] << getmin;
top = Current Report()[axisbox( 2 )] << getmax;
right = Current Report()[axisbox( 1 )] << getmax;
bottom = Current Report()[axisbox( 2 )] << getmin;
Fill Color( {1, 1, .5} );
Rect( left, top, 110, 60, fill = 1 );
Fill Color( "red" );
Rect( 110, top, right, 60, fill = 1 );
Fill Color( "green" );
Rect( left, 60, 110, bottom, fill = 1 );
Fill Color( "orange" );
Rect( 110, 60, right, bottom, fill = 1 );
);Ciao,
Interessante poter contrassegnare alcune parti del grafico con un colore.
C'è qualche possibilità che tu possa farlo senza scripting??
L'ho fatto solo in parte utilizzando linee di riferimento con sovrapposizione (cosa che vorrei evitare) - vedi screenshot allegato.
Buona giornata.
Esistono un paio di modi in cui puoi aggiungere elementi ai tuoi grafici.
Annotazioni
La barra degli strumenti sopra la finestra di visualizzazione di JMP contiene alcune icone che consentono l'aggiunta di elementi di annotazione ai grafici

È possibile aggiungere testo, frecce e linee, poligoni e cerchi. Vengono aggiunti sopra il display grafico.
Puoi anche fare clic con il pulsante destro del mouse sul grafico e scegliere "Personalizza" che consente l'aggiunta di elementi utilizzando primitive grafiche. Sebbene utilizzino JSL, sono molto semplici da usare e consentono di aggiungere aree colorate, testo, linee, ecc. e possono essere posizionati a qualsiasi livello del display.