Betreff: Schattierung von X-Regionen im Graph BuilderIch denke, das kommt deinem Wunsch sehr nahe. Ich habe Ihren Daten eine "Dummyvar"-Spalte hinzugefügt, die für die Ferienmonate nur eine 1 ist und ansonsten leer ist. Dann konnte ich das Diagramm vollständig mit der GUI erstellen (das Geheimnis bestand darin, diese Dummyvar-Spalte hinzuzufügen, sie dann auf die rechte Achse zu verschieben und sie in ein Balkendiagramm zu ändern und dann diese Achse so anzupassen, dass die Balken ganz nach oben gehen die Spitze. Datentabelle angehängt, mit Skript in Datentabelle gespeichert.

Betreff: Schattierung von X-Regionen im Graph BuilderBeide Lösungen von Jarmo und Jed sind großartig mit Codierungs- und Dummy-Variablen-Elementlösungen ... großartige Lösungen!
Eine andere, weniger elegante Möglichkeit, dies zu tun, besteht darin, ein Muster aus Achsenbereichsschattierungen zu verwenden. Während die Einrichtung (oder das Skript) zunächst ziemlich manuell ist, erhalten Sie nette Beschriftungen und andere Funktionen, mit denen die schattierten Bereiche in den Ansichten etwas mehr "hervortreten" können. Dies kann über die Achseneinstellungs-GUI oder durch direktes Skripting im Graph Builder eingerichtet werden. Anbei meine aktualisierte Version der Daten: CDC Axis Range Shading Data.jmp.


Diese Art der Schattierung wurde auch einige Male verwendet, um die horizontalen Bahnen in Gant-Diagrammen von JMP Graph Builder einfacher sichtbar zu machen, und ist in diesem Blog zu sehen: Beste Bilder aus der Galerie.
Betreff: Schattierung von X-Regionen im Graph BuilderIch markiere das auch als Lösung.Es mag arbeitsintensiver sein als die anderen, aber das ist intuitiv einfach.Mir war nicht klar, dass die Verwendung von Bereichen und Schattierungen für Referenzlinien die gewünschten Balken erzeugen würde.Das ist für mich am einfachsten zu verstehen.
Betreff: Schattierung von X-Regionen im Graph BuilderSie können ein solches Diagramm nur mit Graph Builder erstellen, aber es ist ein bisschen nervig.

Ich habe eine zusätzliche Spalte (Spalte 5) mit allen Werten als 1 erstellt. Dann habe ich es auf die rechte Seite verschoben und ein Bereichsdiagramm dafür verwendet. Entscheidend ist die Verwendung von "Als Null behandeln" für fehlende Faktoren (wenn Sie andere Regionen aus Bereichen ausblenden möchten, setzen Sie deren Transparenz auf 0).

Sie müssen Spalte 5 hinzufügen, damit das folgende Skript funktioniert
Mehr sehen...
Es gibt auch andere Möglichkeiten, so etwas zu bauen, hier ist eine Liste von einigen davon
- Sie können es mit Graphic Script skripten
- Sie können die Daten duplizieren, um die Start-/Endzeit für jeden Zeitraum einzuschließen, und Zeilenzeichen verwenden (andere Zeichen funktionieren möglicherweise auch).

Vielleicht @scwise hat mehr ideen?
Betreff: Schattierung von X-Regionen im Graph BuilderExzellent!Genau das, was ich wollte.Ein weiteres Beispiel dafür, dass Antworten keine so wichtige Fähigkeit sind wie Fragen (natürlich wünschte ich, ich wüsste, wie man es selbst macht, aber es ist fast genauso gut, andere Leute dazu zu bringen, das Problem zu lösen).
Schattieren von X-Regionen im Graph BuilderIch möchte die beiden Diagramme in der angehängten Datei so anpassen, dass sie vertikale Balken haben, die die Feiertagsregionen hervorheben (in der Spalte „Feiertage“ angezeigt).Als Beispiel für das, was ich will, sehen Sie https://www.asc.upenn.edu/sites/default/files/styles/1200w/public/2022-12/1999-2021_avg_sui_per_month_CDC.png?itok=4zywI-sl .Wenn jemand ein Skript bereitstellen kann, wäre das großartig, aber ich bin auch daran interessiert, ob es eine Möglichkeit gibt, dies mithilfe der integrierten Funktionen in Graph Builder zu tun.
MassenanpassungBetreff: Schattieren von X-Regionen im Graph BuilderDanke @Jed_Campbell für diese elegante Lösung.
Was für eine brillante Idee, eine Dummy-Variable auf der zweiten Y-Achse und ein Balkendiagramm zum Ein- und Ausschalten der Schattierung zu verwenden.
Dann verfügt der Benutzer weiterhin über die gesamte Flexibilität des Originaldiagramms.
Alternativer Ansatz:
Verwenden Sie die Dummy-Variable als Farbe für eine Heatmap, wie @John_Powell_JMP vor einigen Jahren für eine ähnliche Aufgabe vorgeschlagen hat:
https://community.jmp.com/t5/Discussions/background-color-of-graph-builder/mp/36095/highlight/true#M21243
Der Nachteil: man muss mit den Variablen rumfummeln (keine Y-Variable für die Heatmap, keine Color/Dummy-Variable für das Hauptplot verwenden)
Der Vorteil: man muss nicht an der zweiten Achse herumfummeln (Gitterlinien entfernen etc.)
Welcher Ansatz ist besser?
Hängt vom Anwendungsfall ab.
Wenn nur ein einziges Wochenende schattiert werden soll, kann auch eine Referenzlinie auf der X-Achse die Aufgabe erfüllen
.
@dale_lehman
Mich würde interessieren, welche der drei Lösungsansätze Dir beim Stellen Deiner Frage im Sinn lagen – oder noch besser: eine vierte?
Trotzdem danke für die Frage , die der Community-Sammlung eine wunderbare Lösung hinzugefügt hat.
Graph Builder(
Size( 937, 401 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Summary Statistic( "Median" ),
Graph Spacing( 4 ),
Variables( X( :Month Code ), Y( :"Mean(Deaths, White)"n ), Color( :Dummyvar ) ),
Elements( Heatmap( X, Legend( 37 ) ), Points( X, Y, Color( 0 ), Legend( 38 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
37,
Properties( 0, {Transparency( 0.2 )}, Item ID( "Dummyvar", 1 ) )
)}
)
)
);
Betreff: Schattieren von X-Regionen im Graph BuilderDer Ansatz per Heatmap wäre echt klasse – wenn dieser nicht das Farbattribut „blockieren“ würde….
Aber warte mal, im Ernst? Versuchen wir es doch mal ...
Das ist erstaunlich – mehrere Farbeinstellungen für unterschiedliche Plottypen möglich?
Wie könnte ich diese Gelegenheit immer wieder verpassen!!!
Synergien:
https://community.jmp.com/t5/Discussions/Graph-Builder-subplot-with-different-color-settings/mp/597191/highlight/true#M80084

Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Graph Builder(
Show Control Panel( 0 ),
Variables(
X( :height ),
Y( :height ),
Y( :weight, Position( 1 ) ),
Color( :sex ),
Color( :age )
),
Elements(
Points( X, Y( 2 ), Color( 1 ) ),
Bar( X, Y( 1 ), Color( 2 ) )
)
)