Hallo,
Ich schreibe mein erstes JMP-Skript und brauche Hilfe.
Bisher habe ich mit der Erstellung von Blasendiagrammen begonnen, um meine Datenwiederholungsverteilung in X- und Y-Koordinaten für jeden Teil, den ich gemessen habe, besser zu visualisieren.
Bubble Plot(
X( :X ),
Y( :Y ),
Coloring( :Name( "3Sigma_BH" ) ),
Show Roles( 1 ),
Color Levels( [0.54 8.902325 17.26465 25.626975 33.9893] ),
Title Position( 0, 0 ),
Local Data Filter(
Add Filter(
columns( :Name( "3Sigma_BH" ) ),
Where( :Name( "3Sigma_BH" ) >= 0.54 & :Name( "3Sigma_BH" ) <= 33.9893 )
)
),
By( :PartID ),
SendToReport(
Dispatch(
{},
"1",
ScaleBox,
{Format( "Best", 10 ), Min( -9000 ), Max( 9000 ), Inc( 2000 ),
Minor Ticks( 1 )}
),
Dispatch(
{},
"2",
ScaleBox,
{Format( "Best", 10 ), Min( -9000 ), Max( 9000 ), Inc( 2000 ),
Minor Ticks( 1 )}
)
)
);Mein Problem ist die Farbskala. Ich möchte, dass sie dynamisch von min bis max jedes Teils reicht.
Die Variable, die ich zu erfassen versuche, ist 3Sigma_BH (die ich zum Färben verwende), meine Spalte, die ich für die Teilmenge verwende, ist PartID. Aufgrund dieser festen Farbskala verliere ich den Zusammenhang, siehe Bild unten
Ich dachte an entweder:
- Subset my dt by partID vor dem Plotten und erstelle eine einfache Funktion, um alle partIDs bei jeder Iteration zu durchlaufen und einen neuen Bubble-Plot hinzuzufügen
- Erstellen Sie eine Funktion, um das Minimum für meine aktuelle zu extrahieren
dtData = currentdatatable()<BR /> <EM> for each :PartID in dtData</EM> (
rows = dtData << get min( :3Sigma_BH)
minBH = Min( :height[rows] );
maxBH = Max( :height[rows] );<BR /> ...
Irgendwelche Vorschläge dazu und / oder bessere Optionen als die beiden oben?
Vielen Dank!
Diego
Hallo Diego, schalte im Menü mit den roten Dreiecken "Lock Scales" aus. Diese Option gilt sowohl für die Achsenskalen als auch für die Farbskalen und kann auch als Voreinstellung festgelegt werden, wenn Sie dieses Verhalten immer möchten. Bei deaktivierter Einstellung sollten die Teile Color Levels () und SendToReport () Ihres Skripts ausgeblendet werden, wenn Sie das Skript erneut speichern. Hier ist ein Beispiel aus den Beispieldaten:
Open("$SAMPLE_DATA/San Francisco Crime.jmp");
Bubble Plot(
X( :Longitude ),
Y( :Latitude ),
Coloring( :Time ),
<FONT color="#FF0000">Lock Scales( 0 ),</FONT>
Title Position( 0, 0 ),
Local Data Filter(
Add Filter(
columns( :Category ),
Where( :Category == "ARSON" ),
Display( :Category, Size( 139, 221 ), List Display )
)
)
);