Füge dem Graph Builder in der H-Listenbox vertikale Linien hinzu.Hallo,
Ich möchte mehrere Diagramme in einem einzigen Plot zusammenfassen und dafür den Graph Builder zusammen mit den Listenfeldern V und H verwenden. Außerdem möchte ich den Diagrammen vertikale Linien hinzufügen. Ich habe das Beispiel von @jthi gefunden, stoße aber auf Probleme, sobald mehrere Diagramme vorhanden sind.
Das untenstehende Beispiel funktioniert mit einem einzelnen Diagramm. Sobald ich jedoch das zweite Diagramm aktiviere, erhalte ich eine zusätzliche Achse zwischen den Diagrammen (siehe unten). Wie kann ich das beheben?
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
//gender_list = {"F", "M" };
gender_list = {"F"};
For( i = 1, i < N Items( gender_list ) + 1, i++,
gender = gender_list[i];
dt_gender = dt << Subset(
Filtered Rows( :sex == gender ),
Include All Columns//Name :sex
);
Match ( gender,
"F", data = Column ("height"),
"M", data = Column ("weight")
);
Match ( gender,
"F", ref_line = 60,
"M", ref_line = 100
);
plot = New Window ( gender,
H List Box(
gb1 = dt_gender << Graph Builder(
Size(529, 457),
Show Control Panel(0),
Variables(X(data)),
Elements(Histogram(X, Legend(3)))
),
axisbox = Report(gb1)[AxisBox(1)],
axisbox << Add Ref Line(ref_line, "Dotted", red, gender, 2),
/*gb2 = dt_gender << Graph Builder(
Size(529, 457),
Show Control Panel(0),
Variables(X(data)),
Elements(Histogram(X, Legend(3)))
), */
//axisbox = Report(gb2)[AxisBox(1)],
//axisbox << Add Ref Line(ref_line, "Dotted", red, gender, 2),
),
);
);
Automatisierung und SkripterstellungDatenexploration und -visualisierungBetreff: Hinzufügen vertikaler Linien zum Graph Builder in der H-ListenboxIn „Neues Fenster“ können verschiedene Anzeigeobjekte durch Kommas getrennt aufgelistet werden:
gb = graph Box ();
new window("test",
Text Box ("Hello"),
gb [Axis Box (2)]
)
erstellt ein neues Fenster mit einem Textfeld und einem Achsenfeld.
Wenn Sie dieser Liste Befehle hinzufügen möchten, müssen Sie die Befehle mit einem Semikolon (;) abschließen.
In Ihrem Fall lautet die Antwort:
Mehr anzeigen...
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
//gender_list = {"F", "M" };
gender_list = {"F"};
For( i = 1, i < N Items( gender_list ) + 1, i++,
gender = gender_list[i];
dt_gender = dt << Subset(
Filtered Rows( :sex == gender ),
Include All Columns//Name :sex
);
Match ( gender,
"F", data = Column ("height"),
"M", data = Column ("weight")
);
Match ( gender,
"F", ref_line = 60,
"M", ref_line = 100
);
plot = New Window ( gender,
H List Box(
gb1 = dt_gender << Graph Builder(
Size(529, 457),
Show Control Panel(0),
Variables(X(data)),
Elements(Histogram(X, Legend(3)))
),
axisbox = Report(gb1)[AxisBox(1)];
axisbox << Add Ref Line(ref_line, "Dotted", red, gender, 2);
gb2 = dt_gender << Graph Builder(
Size(529, 457),
Show Control Panel(0),
Variables(X(data)),
Elements(Histogram(X, Legend(3)))
),
axisbox = Report(gb2)[AxisBox(1)];
axisbox << Add Ref Line(ref_line, "Dotted", red, gender, 2);
),
);
);
.
Betreff: Hinzufügen vertikaler Linien zum Graph Builder in der H-ListenboxIch habe versucht, einen Screenshot hinzuzufügen, aber das Kopieren/Einfügen scheint in der Community immer noch nicht zu funktionieren.
@Ryan_Gilmore ?
Betreff: Hinzufügen vertikaler Linien zum Graph Builder in der H-ListenboxIch würde vorschlagen, die Codezeilen zum Hinzufügen von Referenzen außerhalb von „New Window“ zu verschieben, da es (meiner Meinung nach) einfacher ist, sie zu aktualisieren und Änderungen daran vorzunehmen (Sie können auch das tun, was hogi vorgeschlagen hat).
Hier ist eine erste Idee, wie ich das schreiben würde (nicht alles davon sind grundlegende Techniken, aber es kann einige Ideen geben, was möglich ist).
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
plot_width = 400;
plot_height = 300;
aa_genders = Associative Array();
aa_genders["F"] = ["data" => "height", "ref_line" => 60];
aa_genders["M"] = ["data" => "weight", "ref_line" => 100];
For Each({{cur_gender, specs}}, aa_genders,
dt_gender = dt << Subset(
Filtered Rows(:sex == cur_gender),
Include All Columns,
Invisible
);
hlb = H List Box(
gb1 = dt_gender << Graph Builder(
Size(plot_width, plot_height),
Show Control Panel(0),
Variables(X(Eval(specs["data"]))),
Elements(Histogram(X, Legend(3)))
),
gb2 = dt_gender << Graph Builder(
Size(plot_width, plot_height),
Show Control Panel(0),
Variables(X(Eval(specs["data"]))),
Elements(Histogram(X, Legend(3)))
)
);
axisbox = Report(gb1)[AxisBox(1)];
axisbox << Add Ref Line(specs["ref_line"], "Dotted", red, cur_gender, 2);
axisbox = Report(gb2)[AxisBox(1)];
axisbox << Add Ref Line(specs["ref_line"], "Dotted", red, cur_gender, 2);
aa_genders[cur_gender]["dt"] = dt_gender;
aa_genders[cur_gender]["report"] = New Window(cur_gender,
hlb
);
);