Beim Erstellen eines Diagramms im Graph Builder wird die Y-Achse automatisch auf die äußersten Datenpunkte skaliert. Dabei werden jedoch die Spezifikationsgrenzwerte nicht berücksichtigt, die in der Regel außerhalb der äußersten Daten liegen. Daher ist ein Spezifikationsgrenzwert möglicherweise nicht sichtbar.
Gibt es eine Einstellung, Schaltfläche, Methode oder (vorzugsweise) eine einfache JSL-Methode, um die Skalierung der Y-Achse standardmäßig auf die äußersten Daten- und Spezifikationsgrenzen einzustellen? (Eine Brute-Force-Methode wäre, in einer Schleife die Mindest- und Höchstwerte aller Daten- und Spezifikationsgrenzen zu überprüfen und dann den Achsenbereich knapp über diese Werte hinaus festzulegen. Aber ich hoffe, dies vermeiden zu können.)
Das Beispieldiagramm unten zeigt den LSL-Grenzwert aus dem vierten von fünf Boxplots.
Stammt Ihre X-Achse aus 5 verschiedenen Spalten oder aus 1 Ordinal-/Nominalspalte mit 5 Ebenen?
Ist das Kontrollkästchen "Grenzen anzeigen" in der Spalteneigenschaft "Spezifikationsgrenzen" aktiviert? Wenn dieses Kontrollkästchen aktiviert ist und die Y-Achsen-Einstellung nicht angegeben wurde, sollten die Spezifikationsgrenzen standardmäßig angezeigt werden.
Welche JMP-Version, welches Betriebssystem?
Danke, Jim. JMP Pro 17.2.0 unter macOS. Es sind fünf verschiedene Spalten, aber das Skript wird tatsächlich von einem anderen JSL-Skript erstellt und sieht daher möglicherweise etwas anders aus (siehe unten).
Offenbar ist die Y-Achseneinstellung nicht angegeben. In den Spalteneigenschaften sehe ich „Als Graph-Referenzlinien anzeigen“ (falls Sie das meinen). Das Aktivieren dieses Kontrollkästchens und anschließende Erstellen eines neuen Diagramms über den Graph Builder scheint das Problem jedoch nicht zu beheben.
Ist es vielleicht möglich, im folgenden Skript ein Stück JSL vorzuschlagen, um die von Ihnen beschriebene Funktion zu aktivieren?
Graph Builder(
Size( 1000, 700 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables(
X(
"stage_10",
Combine( "Parallel Merged" )
),
X(
"stage_2",
Position( 1 ),
Combine( "Parallel Merged" )
),
X(
"stage_4",
Position( 1 ),
Combine( "Parallel Merged" )
),
X(
"stage_5",
Position( 1 ),
Combine( "Parallel Merged" )
),
X(
"stage_6",
Position( 1 ),
Combine( "Parallel Merged" )
)
),
Elements(
Box Plot(
X( 1 ),
X( 2 ),
X( 3 ),
X( 4 ),
X( 5 ),
Legend( 3 ),
Jitter( "Random Normal" )
),
Caption Box( X( 1 ), Legend( 4 ), Summary Statistic( "N" ) )
),
SendToReport(
Dispatch(
{},
"stage_10",
ScaleBox,
{Label Row(
{Tick Mark(
Label( "stage_10" ),
Label( "10" )
), Tick Mark(
Label( "stage_2" ),
Label( "2" )
), Tick Mark(
Label( "stage_4" ),
Label( "4" )
), Tick Mark(
Label( "stage_5" ),
Label( "5" )
), Tick Mark(
Label( "stage_6" ),
Label( "6" )
), Set Font Size( 14 ), Label Orientation( "Horizontal" )}
)}
),
Dispatch( {}, "", ScaleBox, {Label Row( Set Font Size( 14 ) )} ),
Dispatch(
{},
"graph title",
TextEditBox,
{Set Text( "My Graph" )}
),
Dispatch( {}, "X title", TextEditBox, {Set Text( "" )} ),
Dispatch(
{},
"Graph Builder",
FrameBox,
{DispatchSeg( Text Seg( 1 ), {Font( "Helvetica", 18 )} )}
)
)
)
Das Angeben mehrerer Variablen für die X-Achse scheint die automatische Skalierung der Spezifikationsgrenzen zu negieren. Die einzige Lösung, die ich sehe, wäre, Ihrem JSL die Einstellung der Y-Achse hinzuzufügen, um das Minimum und Maximum der Achse festzulegen.