So erhalten Sie eine Heatmap mit katergorischer Färbung
Hallo,
Ich erstelle Heatmaps mit Färbung durch numerische Werte. Aber ich kann nicht nach diskreten Stringwerten färben.
In der beigefügten Datentabelle versuche ich, eine Heatmap zu erstellen, die von verschiedenen Geräten eingefärbt wird: Ich hatte erwartet, eine Karte mit einer bestimmten Farbe für jedes Gerät zu sehen. Aber ich bekomme eine Verlaufsfärbung.
Wie kann ich dies ändern, um für jedes Gerät eine bestimmte diskrete Farbe zu erhalten?
Betreff: Wie bekomme ich eine Heatmap mit katergorischer Färbung?Genau das habe ich gesucht!!!!!!
Ich denke, ich muss bis September 2019 warten 
Ich werde in der Zwischenzeit die Workarounds verwenden
Danke euch allen.
Betreff: Wie bekomme ich eine Heatmap mit katergorischer Färbung?Hallo @samir ,
Ich verstehe den Frust auf jeden Fall! Ich möchte, dass Sie wissen, dass die Entwickler, die an Graph Builder arbeiten, diese Frustration ebenfalls verstehen. Zur Erinnerung: JMP 14 (und früher) generiert eine quantitative Skala für die Werte Ihrer kategorialen Variablen und verwendet die Karte dieser Farben (und der Mittelwerte dieser Farben), wenn die Zellen der Heatmap gefüllt werden. JMP 15 (kommt im September 2019) wird sich anders verhalten: Nominale und ordinale Variablen, die in der Farbrolle einer Heatmap verwendet werden, werden kategorisch behandelt, mit individueller Farbsteuerung für jede Ebene der kategorialen Variablen. Wenn mehrere Werte eine beliebige Zelle der Heatmap belegen und diese Zeilen unterschiedliche Ebenen dieser kategorialen Variablen aufweisen, spiegelt die Zellenfarbe den Durchschnitt der angegebenen Farben wider.
Hier ist eine Gegenüberstellung von 14 (und früher) und ein Vorgeschmack auf das Verhalten in 15:
@julianisch
Betreff: Wie bekomme ich eine Heatmap mit katergorischer Färbung?Eine Möglichkeit, das gewünschte Ergebnis zu erzielen, besteht darin, die Wafermap mithilfe von JMP-Grafiken zu generieren.

Hier ist die einfache JSL, die das tut
Names Default To Here( 1 );
dt = Current Data Table();
xrange = Col Max( :x ) - Col Min( :x );
yrange = Col Max( :y ) - Col Min( :y );
If(
xrange < yrange,
xsize = 1;
ysize = yrange / xrange;,
ysize = 1, xsize = xrange / yrange
);
Summarize( dt, devicesList = By( :Device ) );
colorList = {3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14};
xMatrix = [0, 0, 0, 0];
yMatrix = [0, 0, 0, 0];
New Window( "Wafer Map",
Graph Box(
Y Scale( Col Min( :Y ), ySize * Col Max( :Y ) ),
X Scale( Col Min( :X ), xSize * Col Max( :X ) ),
For( i = 1, i <= N Rows( dt ), i++,
xMatrix[1] = xSize * :X[i];
yMatrix[1] = ySize * :Y[i];
xMatrix[2] = xMatrix[1];
yMatrix[2] = YMatrix[1] + ySize;
xMatrix[3] = xMatrix[1] + xSize;
yMatrix[3] = YMatrix[1] + ySize;
xMatrix[4] = xMatrix[1] + xSize;
yMatrix[4] = YMatrix[1];
color = colorList[Loc( devicesList, :Device[i] )[1]];
Fill Color( color );
Polygon( xMatrix, yMatrix );
)
)
)
;Betreff: Wie bekomme ich eine Heatmap mit katergorischer Färbung?Hallo @julianisch ,
Zunächst einmal bin ich enttäuscht zu sehen, dass dies eine ECHTE Einschränkung in JMP ist.
Sie umgehen ist ein Schritt nach vorne, aber ich kann diese Implementierung nicht verwenden: Es ist schwierig, mit dem Streudiagramm die Größe der Punkte (Quadrate) zu steuern, und wie Sie gezeigt haben, gibt es Zwischenräume zwischen den Quadraten, die den Eindruck erwecken, dass es leere Geräte gibt zwischen den farbigen,...
Alles in allem muss ich einen anderen Weg finden 
Danke für den Tipp.
Betreff: Wie bekomme ich eine Heatmap mit katergorischer Färbung?Hallo @samir
Obwohl Heatmaps eine kategoriale Farbvariable verwenden können, tut dies, wie Sie bemerkt haben, auf eine manchmal unerwünschte Weise, nämlich die Ebenen der Farbvariablen als numerisch zu betrachten und einen Farbverlauf bereitzustellen. Dies *ist* in Zeiten nützlich, in denen angenommen werden kann, dass diese Ebenen eine gewisse Dimensionalität haben, und Sie viele Beobachtungen haben, die sich überschneiden, da Sie dann die allgemeine Verteilung Ihrer halbquantitativen kategorialen Variablen im zweidimensionalen Raum erkennen können (und da die Heatmap arbeitet mit den Werten dieser überlappenden Punkte, eine gewisse Rechenleistung für die Farbvariable ist erforderlich, damit ein Durchschnitt berechnet werden kann).
In diesem Fall könnte ich mich für ein Streudiagramm entscheiden und die Punkte in Quadrate ändern und die Markierungsgröße erhöhen. Daraus ergibt sich folgendes. Ist das hilfreich? (Ihre Datentabelle und das neue Skript sind beigefügt)
