Come modificare l'asse x del grafico di controllo in Process ScreeningUsando lo screening del processo ottengo rapidamente il grafico delle prestazioni del processo fornendo alla matrice 2x2 stabile / instabile e conforme / non conforme al calibro in cui focalizzare la mia attenzione per gli sforzi di miglioramento. Questo è veramente utile
Un esempio è allegato.
Dato che le 12 caratteristiche in allegato hanno numeri diversi di dati, vedo che i grafici di controllo creati in modo predefinito hanno sempre assi x che corrono alla lunghezza del numero di righe nella tabella.
In allegato ad es Caratteristico Sette ha 583 dati ma Caratteristica nove solo 79 dati.
La creazione del grafico di controllo per Caratteristica Nove ha un asse x che converte i dati 583 per impostazione predefinita. Questa presentazione non è l'ideale dato che la prima cosa che faccio è cambiare l'asse x, ma in questo modo per numerosi grafici è quindi il tempo necessario.
Qualcuno può consigliare come utilizzo lo scripting, o qualche altra opzione, per configurare automaticamente gli assi x in modo che riflettano il numero di dati effettivamente presenti dietro ogni caratteristica in ogni colonna? Sarebbe bello sapere come fare in modo che le immagini create per ottenere maggiori informazioni sui dati siano il più possibile informative il più rapidamente possibile.
Ho appena controllato e la domanda si applicherebbe anche a Control Chart Builder, cioè quale operazione eseguire sulle colonne in modo che ogni asse x sia ridimensionato al numero di righe con dati reali.
Ri: Come modificare l'asse x del grafico di controllo in Process ScreeningCiao,
Ho pensato di postarlo nel caso qualcuno lo trovasse utile. Un altro modo possibile per ottenere ciò è creare una nuova tabella di dati con i processi impilati e rimuovere i valori mancanti dalla tabella impilata. Quindi è possibile utilizzare la colonna Raggruppamento in Process Screening per dividere la tabella in processi separati. (Si noti che sarà necessario creare una tabella dei limiti delle specifiche per utilizzare questo metodo se si desidera il calcolo delle capacità poiché le proprietà della colonna scompariranno nella tabella impilata. ) Il seguente JSL dimostra come fare questo:
dt = Data Table("Process Screening Example");
dtStack = dt << Stack(
columns(
:Characteristic One,
:Characteristic Two,
:Characteristic Three,
:Characteristic Four,
:Characteristic Five,
:Characteristic Six,
:Characteristic Seven,
:Characteristic Eight,
:Characteristic Nine,
:Characteristic Ten,
:Characteristic Eleven,
:Characteristic Twelve
),
Source Label Column( "Label" ),
Stacked Data Column( "Data" ),
Output Table( "Stacked Process Screening Example" )
);
dtStack << select where (isMissing(:Data));
dtStack << delete rows;
obj = dt<< Manage Spec Limits(
Y(
:Characteristic One,
:Characteristic Two,
:Characteristic Three,
:Characteristic Four,
:Characteristic Five,
:Characteristic Six,
:Characteristic Seven,
:Characteristic Eight,
:Characteristic Nine,
:Characteristic Ten,
:Characteristic Eleven,
:Characteristic Twelve
)
);
dtLimits = obj << Save to Tall Spec Limits Table;
obj2 = dtStack << Process Screening(
Y( :Data ),
Grouping( :Label ),
Control Chart Type( "Indiv and MR" ),
Use Limits Table(
1,
dtLimits,
Grouping( :Variable ),
LSL( :LSL ),
USL( :USL ),
Target( :Target ),
Go
)
);
obj2 << select all;
obj2 << control charts for selected items;
Se vuoi solo fare lo stesso con Control Chart Builder senza avviare Process Screening, puoi utilizzare il seguente JSL:
dt = Data Table("Process Screening Example");
dtStack = dt << Stack(
columns(
:Characteristic One,
:Characteristic Two,
:Characteristic Three,
:Characteristic Four,
:Characteristic Five,
:Characteristic Six,
:Characteristic Seven,
:Characteristic Eight,
:Characteristic Nine,
:Characteristic Ten,
:Characteristic Eleven,
:Characteristic Twelve
),
Source Label Column( "Label" ),
Stacked Data Column( "Data" ),
Output Table( "Stacked Process Screening Example" )
);
dtStack << select where (isMissing(:Data));
dtStack << delete rows;
obj = dtStack << Control Chart Builder( Variables( Y( :Data )), By( :Label ) );
Ri: Come modificare l'asse x del grafico di controllo in Process ScreeningGrazie!
Ri: Come modificare l'asse x del grafico di controllo in Process ScreeningNon sono a conoscenza di una proprietà di colonna che possa risolvere il problema, ma può essere eseguita con JSL.
Ecco uno script di esempio che scorre in ogni diagramma di controllo e adatta l'asse x al numero di osservazioni.
dt = Data Table("Process Screening Example");
dt << Process Screening(
Y(
:Characteristic One,
:Characteristic Two,
:Characteristic Three,
:Characteristic Four,
:Characteristic Five,
:Characteristic Six,
:Characteristic Seven,
:Characteristic Eight,
:Characteristic Nine,
:Characteristic Ten,
:Characteristic Eleven,
:Characteristic Twelve
),
Control Chart Type("Indiv and MR"),
Process Performance Graph(1),
Test 2(1),
Ppk Capability Boundary(1),
Stability Ratio Boundary(1.2),
Select All,
Control Charts for Selected Items,
SendToReport(Dispatch({"Process Performance Graph"}, "ProcessScreening Graph", FrameBox, {Frame Size(553, 424)}))
);
//get list of Control Chart top Outline Boxes
obs = Current Report() << topparent << xpath("//ListBox/OutlineBox");
// Set x-axis max after each N (retrieved from the "Porcess Summary" boxes)
For(i = 1, i <= N Items(obs), i++,
psum = obs[i][Outline Box("Process Summary")];
nloc = Loc((psum << xpath("//StringColBox"))[1] << get, "N")[1]; // locate row of "N"
n = (psum << xpath("//NumberColBox"))[1][nloc]; // get "N"
(obs[i] << xpath("//AxisBox"))[1] << Max(n + 0.5); // set max
);