Sto cercando di utilizzare il commutatore di colonne, ma ogni colonna ha bisogno di un filtro dati locale diverso. C'è un modo per assegnare un filtro dati locale specifico a ciascuna colonna? Ho allegato un file JMP con i tre grafici separati che desidero con i relativi filtri di dati appropriati e vorrei avere un grafico che usa la colonna swicher per scorrere ciclicamente ciascuno di essi. (Commutatore di colonne per Temp, pH e concentrazione.)
@Signorina Ho notato che la trasformazione della colonna sta cambiando le variabili nominali in variabili continue, ma non sono sicuro del motivo per cui ciò potrebbe causare un problema. Sono anche in grado di "resettare" manualmente il commutatore di colonne facendo clic sulla freccia rossa sotto il commutatore di colonne, accanto a dove dice "3 colonne". Potrei scrivere questo reset?
Sto usando JMP 12 su un PC.
Non riesco a riprodurre ciò che descrivi. Il report prodotto dallo script ha un normale switcher di colonne e sono in grado di scorrere le tre colonne più volte manualmente o premendo il pulsante play.
Sto usando JMP 14.2 per Mac.
Grazie a tutti per le vostre risposte veloci! @txnelson @ron_horne @Signorina
@Signorina :
Lo script che hai scritto funziona - crea i grafici con i filtri di dati che volevo. Tuttavia, sono solo in grado di scorrere i 3 grafici per 1 volta (e poi scompaiono completamente). Come modificherei questo script per assicurarmi che possa continuamente passare / scorrere tra tutti e tre i grafici come un normale commutatore di colonne?
Un modo è quello di imitare i filtri di dati locali desiderati utilizzando trasformazioni di colonne locali, ovvero utilizzare una formula per escludere condizionalmente i dati. E quindi applicare il commutatore di colonne alle colonne "trasformate".
Esempio (JMP 14):
Data Table("jmp question 2.jmp") << Graph Builder(
Size(542, 442),
Show Control Panel(0),
Variables(
X(:Name("Time (hr)")),
Y(:Name("Impurity (pg)")),
Overlay(
Transform Column(
"pH at Temp=23°C",
Formula(If(:Name("Temperature (°C)") == 23, :pH))
)
)
),
Elements(Points(X, Y, Legend(15)), Line(X, Y, Legend(16))),
Column Switcher(
Transform Column(
"pH at Temp=23°C",
Formula(If(:Name("Temperature (°C)") == 23, :pH))
),
{Transform Column(
"pH at Temp=23°C",
Formula(If(:Name("Temperature (°C)") == 23, :pH))
), Transform Column(
"Conc at Temp=37°C",
Formula(
If(:Name("Temperature (°C)") == 37,
:Name("Concentration (U/mL)")
)
)
), Transform Column(
"Temp at pH=8 & Conc=90 U/ml",
Formula(
If(:pH == 8 & :Name("Concentration (U/mL)") == 90,
:Name("Temperature (°C)")
)
)
)}
),
SendToReport(
Dispatch(
{},
"Time (hr)",
ScaleBox,
{Min(-1), Max(35), Inc(5), Minor Ticks(0)}
),
Dispatch(
{},
"Impurity (pg)",
ScaleBox,
{Scale("Log"), Format("Scientific", 12), Min(5), Max(800000), Inc(1),
Minor Ticks(1)}
),
Dispatch({}, "Graph Builder", FrameBox, {Marker Size(6)})
)
);
Ciao @kk ,
In alcuni scenari può essere utile duplicare la tabella di dati usando sottoinsiemi. In questo caso è necessario controllare i tempi in cui i sottoinsiemi della stessa tabella si aggiornano a vicenda.
Ron
Questo può essere fatto aggiungendo uno script grafico al grafico o al grafico delle piattaforme. Potrebbe attivarsi in base alla modifica del grafico, che potrebbe quindi eliminare il filtro dei dati locali corrente e quindi crearne uno nuovo con nuove specifiche al suo posto.
Potresti essere in grado di convincere qualcuno a fornirti ulteriori dettagli se hai dettagliato esattamente cosa avrebbero ciascuno dei Filtri dati locali per ciascuna delle variabili, Temp, pH e concentrazione.