Liebe Community,
Ich suchte nach einem Histogramm einer mit "Defekten" überlagerten "Variablen". Dafür habe ich Bins in der Spalte "Variable_coded" mit der Formel erstellt.
Als nächstes habe ich Graph Builder verwendet, "Variable_coded" als X und "Output" überlagert. Ich benutze auch "Zeit" im Datenfilter.
Ich habe die Option "label by value" ausprobiert. Ich möchte jedoch, dass der Diagrammersteller den Prozentsatz anhand der "Summe in der Ablage" über jeder Leiste kennzeichnet.
Ist es auch möglich, Gesamtwerte im Hintergrund zu haben, die sich dynamisch ändern, wenn ich den Filter verwende? Mit anderen Worten, ich möchte diese beiden Diagramme zusammenführen.
Vielen Dank
dt = open("$Desktop\SampleData_Bt1.jmp");
dt << New Column( "Variable_coded",
Character,
"Nominal",
Formula(
List = {"20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35",
"36", "37", "38", "39", "40"}[Loc Sorted(
[20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40],
:Variable
)]
),
);
dt << select where (:Output == "GOOD");
dt << hide and exclude;
dt << Graph Builder(
Size( 1072, 922 ),
Lock Scales( 1 ),
Variables( X( :Variable_coded ), Overlay( :Output ) ),
Elements(
Bar( X, Legend( 10 ), Label( "Label by Value" ) ),
Caption Box( X, Legend( 11 ), Summary Statistic( "N" ) )
),
Local Data Filter(
Add Filter( columns( :time ), Where( :time >= 117.31 & :time <= 124.29 ) )
),
SendToReport(
Dispatch(
{},
"Variable_coded",
ScaleBox,
{Min( -0.5 ), Max( 17.5 ), Inc( 1 ), Minor Ticks( 0 )}
),
Dispatch(
{},
"",
ScaleBox,
{Min( 0 ), Max( 500 ), Inc( 50 ), Minor Ticks( 0 )}
),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
10,
Properties(
2,
{Fill Color( 57 ), gradient(
{Scale Values( [0 1] ), Width( 9 ), N Labels( 6 )}
)}
)
)}
)
)
);
dt<<GRAPH builder="">= 117.31 & :time <= 124.29 ) )
),
SendToReport(
Dispatch(
{},
"Variable_coded",
ScaleBox,
{Min( -0.5 ), Max( 17.5 ), Inc( 1 ), Minor Ticks( 0 )}
),
Dispatch(
{},
"",
ScaleBox,
{Min( 0 ), Max(500 ), Inc( 50 ), Minor Ticks( 1 )}
),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
7,
Properties(
0,
{Fill Color( 32 ), gradient(
{Scale Values( [0 1] ), Width( 9 ), N Labels( 6 )}
)}
)
)}
)
)
)</GRAPH>
also vor allem coole daten danke für das posten.
Für das Overlay-Histogrammdiagramm wie folgt:

Ich setze die Variable auf die X-Achse und die Ausgabe in die Überlagerungsrolle. Wählen Sie dann das Histogrammdiagrammelement aus.
Graph Builder(
Show Control Panel( 0 ),
Variables( X( :Variable ), Overlay( :Output ) ),
Elements( Histogram( X, Legend( 6 ) ) )
)
Der Rest Ihrer Frage ist, wo ich denke, dass die Dinge schwieriger werden.
Ich habe ein Add-In namens Inveractive Binnin v2 verwendet. und die Daten in Pentile unterteilt, 10 Gruppen mit ungefähr der gleichen Anzahl von Zeilen.
Mit dem Add-In kann ich die Ablagen in der Datentabelle speichern.
Dann habe ich Analyze / Tabulate verwendet, um diese Tabelle zu erstellen

Tabulate(
Show Control Panel( 0 ),
Add Table(
Column Table( Grouping Columns( :Output ), Statistics( Row % ) ),
Row Table( Grouping Columns( :Variable Groups ) )
)
)
//:Variable Groups is the column generated from the interactive binning add-in
Ich habe aus der Tabellentabelle eine Datentabelle gemacht und die Fehlertypen gestapelt.
Nun habe ich eine Tabelle mit einer Spalte für die Variablengruppen, eine Spalte für den Prozentsatz der Variablengruppe, die jeweils einen Defekttyp darstellt, und eine Spalte mit dem Defekt- oder Gut-Label. (drei Spalten).
So kann ich diesen Graphen konstruieren.

Graph Builder(
Size( 966, 489 ),
Show Control Panel( 0 ),
Variables( X( :Variable Groups ), Y( :Data ), Overlay( :Label ) ),
Elements(
Bar( X, Y, Legend( 5 ), Bar Style( "Stacked" ), Label( "Label by Value" ) )
)
)
Ich bin mir nicht ganz sicher, ob Sie hier hingegangen sind, aber es ist ein bisschen näher. Könnte sein?
x