Graph Builder-Diagramme nach Variable mit unterschiedlichen Y-AchsenskalenAlle,
Ich muss meinen Scripted Graph Builder so ändern, dass er für jedes Diagramm unterschiedliche Skalen festlegt.
Ich habe eine Tabelle der (vereinfachten) Form:
:date - nur ein Datum
:rawValue – ein numerischer Wert
:byVariable – mehrere kategoriale Werte, um :rawValues in Gruppen zu unterteilen
:rawMedian – nur ein Medianwert für jede der Gruppen, Formel Col Quantile(:rawValue, 0.5, :byVariable)
Ich stelle es folgendermaßen dar:
Graph Builder(
Size( 800, 500 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables(
X( :date ),
Y( :rawValue ),
Y( :rawMedian ) //It's just a straight horizontal line on each plot
),
By( :byVariable )
)
Jetzt möchte ich die Y-Achsenskala für jedes Diagramm separat festlegen und für diese bestimmte :byVariable gleich sein, sagen wir, 3*:rawMedian.
Wie geht das am besten?
Danke,
M.
MassenanpassungRe: Graph Builder Diagramme nach Variablen mit unterschiedlichen Y-Achsen-SkalenKlicken Sie mit der rechten Maustaste auf das Gliederungsfeld für den Diagrammersteller und wählen Sie Bearbeiten==>Baumstruktur anzeigen. Wenn Sie dann auf die Achse klicken, die Sie interessiert, wird sie in der Baumstruktur hervorgehobenRe: Graph Builder Diagramme nach Variablen mit unterschiedlichen Y-Achsen-SkalenJim,
Ja, ich bin zu dem gleichen Schluss gekommen. Nur mache ich eine temporäre Übersichtstabelle für alle byVariables und lese sie in ein assoziatives Array ein. Meine Datentabellenstruktur und Diagramme sind viel komplizierter als ich gezeigt habe, deshalb. Was ich jetzt versuche und womit ich zu kämpfen habe, ist, die richtige AxisBox auf meinem Grundstück zu finden.Re: Graph Builder Diagramme nach Variablen mit unterschiedlichen Y-Achsen-SkalenHier ist ein einfaches Beispiel, das unterschiedliche Werte für jede der Achsen für die By-Gruppen einstellt.Wenn Sie nicht verstehen, wie das Skript die Anzeigebäume verwendet, um die Werte zu ändern, sind die Anzeigebäume im Skriptleitfaden dokumentiert
Hilfe==>Dokumentationsbibliothek
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/aircraft incidents.jmp" );
dt:Event Date << set name( "Date" );
dt:Total Uninjured << set name( "rawValue" );
dt:Engine Type << set name( "byVariable" );
dt << New Column( "rawMedian", formula( Col Quantile( :rawValue, .5, :byVariable ) ) );
gb = Graph Builder(
Size( 800, 500 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables(
X( :date ),
Y( :rawValue ),
Y( :rawMedian ) //It's just a straight horizontal line on each plot
),
By( :byVariable )
);
summarize(groups=by(:byVariable));
// loop across the different byVariable values and changes the axes
For(i=1,i<=nitems(groups), i++,
report(gb[i])[AxisBox(2)]<< max (14-i);
report(gb[i])[AxisBox(3)] << min (.6 +.01*i);
);