Me gustaría obtener un diagrama de cuadro de lista similar al siguiente script pero con un formato de datos diferente. Mis datos se parecen más a la siguiente tabla donde todos los datos a trazar se encuentran en las dos primeras columnas. Quiero que la parte de la lista en el cuadro de lista sea un recuento de prueba y, cuando hago clic en un recuento de prueba, se genera un gráfico tanto para avance como para retroceso. Parece que puede ser posible con un gráfico bivariado utilizando la entrada by... Bivariado (I1, V1, por tipo de barrido, por recuento de pruebas).
¿Es esto posible? ¿Podría obtener alguna orientación sobre cómo hacer que esto funcione? Soy un novato en JMP y no estoy del todo seguro de por dónde empezar.
Mi formato de datos
| V1 | I1 | Recuento de pruebas | Tipo de barrido |
| 0 | 0 | 1 | Adelante |
| 1 | .1 | 1 | Adelante |
| 2 | .2 | 1 | Adelante |
| 0 | 0 | 1 | Contrarrestar |
| -1 | -.1 | 1 | Contrarrestar |
| -2 | -.2 | 1 | Contrarrestar |
| 0 | 0 | 2 | Adelante |
| 1 | .1 | 2 | Adelante |
| 2 | .2 | 2 | Adelante |
Ejemplo de cuadro de lista a partir de datos de muestra
// Listbox_Graphs.jsl
// Display one graph at a time using a listbox to select which one
names default to here(1);
dt = open("$sample_data\CrimeData.jmp", invisible);
xcol = "Year";
ycols = {"Population", "Total Rate", "Violent Rate", "Property Rate", "Murder Rate",
"Rape Rate", "Robbery Rate", "Agg-Aslt Rate", "Burglary Rate", "Larceny Rate",
"MVTheft Rate", "Murder", "Rape", "Robbery", "Agg-Aslt", "Burglary", "Larceny",
"MVTheft", "Total", "Violent", "Property", "Latitude", "Longitude"};
gb_expr = {};
for(i = 1, i <= nitems(ycols), i++,
ycol = ycols[i];
// Define an array of graph builder expressions, one for each y column
one_expr = evalinsert(
"\[gb_expr[^i^] = expr(
dt << Graph Builder(
Show Control Panel( 0 ),
Variables( X( :Name( "^xcol^" ) ), Y( :Name( "^ycol^" ) ) ),
Elements( Points( X, Y, Legend( 5 ) ), Smoother( X, Y, Legend( 6 ) ) )
),
);
]\");
eval(parse(one_expr));
);
// Code to run when a different y variable is selected
y_list_expr = expr(
y_mtx = y_lb << get selected indices;
y_i = y_mtx[1];
hlb << delete;
vlb << append(
hlb = hlistbox(
eval(gb_expr[y_i])
)
);
);
gw = new window("Graphical Output",
hlistbox(
panel box(
xcol || " vs:",
y_lb = list box(ycols,
width(250),
nlines(20),
max selected(1),
y_list_expr,
)
),
panel box("Graph",
vlb = vlistbox(
hlb = hlistbox(
eval(gb_expr[1]),
)
)
)
)
);
y_lb << set selected(1);
Configurarlo como una página diferente funcionó perfectamente. ¡Gracias!
Es posible que también desee considerar el uso de la Plataforma de evaluación de respuestas.Genera una tabla de datos resumidos que tiene los resultados del análisis en orden de importancia.La selección de uno o más parámetros y luego la ejecución de uno de los scripts de tabla proporcionados produce los diagramas de dispersión usando Ajustar Y por X.Por lo tanto, todas las pruebas analíticas disponibles en Fit Y by X están disponibles para los parámetros seleccionados.
Names Default To Here( 1 );
dt = Current Data Table();
Response Screening(
Y( :V1, :I1 ),
X( :Test Count, :Sweep Type ),
PValues Table on Launch( 1 )
);

No estoy seguro de a qué te refieres con dividir el eje. Posiblemente podría crear una nueva columna con agrupación adicional y usarla como otro filtro de datos local o, por ejemplo, como página.
Editar: publiqué el comentario dos veces. Disculpas.
Esto puede funcionar. ¿Hay alguna manera de dividir el eje? Los datos reales tienen un rango mucho mayor de voltajes y corrientes.
Funcionalmente, este es un gran comienzo. ¡Gracias por tu ayuda!
¿Quizás usar el filtro de datos local sería suficiente? Cambie el tipo de modelado Test Count a Ordinal o Nominal y luego podrá obtener algo como esto:

Guión creado por JMP:
Graph Builder(
Size(536, 491),
Show Control Panel(0),
Variables(X(:V1), Y(:I1), Group X(:Test Count), Group X(:Sweep Type)),
Elements(Points(X, Y, Legend(46)), Smoother(X, Y, Legend(47))),
Local Data Filter(
Add Filter(
columns(:Test Count),
Where(:Test Count == 1),
Display(:Test Count, N Items(2), "List Display")
)
)
)
Editar:
Script con tabla de datos de ejemplo
Ver más...