Eine weitere Denksportaufgabe für die Scripter da draußen ...
Wenn ich eine Grafik habe, die so aussieht:

dt = Open("$Sample_Data/Big Class.jmp");
graph = dt << Graph Builder(
Size( 532, 452 ),
Show Control Panel( 0 ),
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 3 ) ), Smoother( X, Y, Legend( 4 ) ) )
);
Wie würde ich es unten aussehen lassen, nachdem das Diagrammfenster erstellt wurde und nur Nachrichten an den Diagrammersteller selbst verwendet werden (dh betrachten wir Zeilenzustände außerhalb der Tabelle). Über die GUI würde ich dies tun, indem ich mit der rechten Maustaste auf die Markierung neben "Höhe" in der Legende klicke und die Markierung und Farbe ändere. Ich kann jedoch nicht herausfinden, wie das über JSL-Messaging zu tun ist.

dt = Open("$Sample_Data/Big Class.jmp");<BR /><BR />graph = Graph Builder(
Size( 532, 452 ),
Show Control Panel( 0 ),
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 3 ) ), Smoother( X, Y, Legend( 4 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
3,
Properties(
0,
{Line Color( 51 ), Marker( "Filled Down Triangle" )},
Item ID( "height", 1 )
)
)}
)
)
);
Gedanken?
M
Hallo Mike-
Ich denke, Sie können dies tun, indem Sie mit Legend Server und Legend Item Werte in der Legende festlegen. Ich habe kürzlich versucht, etwas Ähnliches zu tun, und bin auf diese Funktionen gestoßen.
names default to here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = Graph Builder(
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 3 ) ), Smoother( X, Y, Legend( 4 ) ) )
);
server = gb << get legend server;
item1 = server << get legend item( 3, 1 );
item1 << set properties(
{
marker size ( 5 ),
marker ("Filled Down Triangle"),
Line Color ( 19 )
}
);
item2 = server << get legend item( 4, 1 );
item2 << set properties(
{
Line Color ( 25 ),
Line Style ( 2 )
}
);
-Schott
Ich habe das Gleiche gedacht, aber ich denke, es gibt etwas an dieser Strategie, das nicht richtig funktioniert, wenn es sich innerhalb eines Dashboard- / Application Builder-Fensters befindet. Ich bekomme den Haken nicht in den Legend Server.