Graph Builder: cómo hacer gráficos apilados con cierto desplazamiento para cada serieHola: tengo una hoja de cálculo en Excel que genera un gráfico de varias series, todas apiladas y desplazadas entre sí, pero también permite que las réplicas tengan un espaciado más ajustado, como se ve a continuación:

Sin embargo, esto requiere varias hojas y rehacer manualmente el desplazamiento cada vez, además de ajustar constantemente los colores porque eso es difícil de controlar en Excel. JMP sería mil veces más fácil.
¿Existe alguna forma en el generador de gráficos (o, para evitar el problema XY, en algún otro lugar de JMP) que permita la facilidad de arrastrar y soltar para lograr esto? Incluso si hay que modificar manualmente el espacio requerido, la barra de arrastre en el generador de gráficos lo haría mucho más fácil. Parece que no puedo recrearlo, pero tal vez me estoy perdiendo algo y pensé en preguntar.
¡Gracias!
Automatización y secuencias de comandosExploración y visualización de datosCompartir y comunicar resultadosventanasRe: Graph Builder: Cómo hacer gráficos apilados con cierto desplazamiento para cada seriePuede usar una columna de fórmula en el eje y donde agrega la columna de color × factor de escala a los valores y originales.Re: Graph Builder: Cómo hacer gráficos apilados con cierto desplazamiento para cada serie¿Las réplicas son réplicas exactas entre sí?
Re: Graph Builder: Cómo hacer gráficos apilados con cierto desplazamiento para cada serieHola @ehchandler ,
Aquí hay un código JSL que hará parte del trabajo: agrega fácilmente un desplazamiento fijo a cada espectro y agrega la misma cantidad a cada espectro adicional. Entonces, para el primer espectro, no hay compensación, pero luego cada espectro adicional obtiene una compensación de n*5000, en mi caso usé 500. Usé la tabla de datos de muestra NMR DoE.jmp y la transpuse para obtener columnas. de espectros, que supongo que es cómo está estructurada su tabla de datos en lugar de filas como espectros y columnas como longitudes de onda. De todos modos, debería poder modificar este código para que funcione mejor para su estructura de datos y tablas de datos. Adjunto el código y la tabla de datos de muestra modificada para que puedas verlo. Aquí están los resultados. Luego puede ingresar manualmente y editar el desplazamiento para cualquier réplica o espectro específico que necesite.
El gráfico superior no tiene desplazamiento y el gráfico inferior tiene desplazamiento. La codificación de colores es automática por JMP.

Aquí está el código:
Names Default To Here( 1 );
dt = Current Data Table(); //assigns current data table to variable dt
ColNames = dt << Get Column Names; //gets a list of column names
offset = 5000;
//This generates a new column for each spectra with the column name + Offset to it
For( i = 2, i <= N Items( ColNames ), i++,
If( i == 2,
offset = 0, // no offset for the first spectrum
offset = 5000 //offset amount for each additional spectrum
);
Eval( Eval Expr( dt << New Column( Colnames[i] || " Offset", Formula( Expr( As Name( ColNames[i] ) ) + (Expr( (i - 2) * offset )) ) ) ) ); //the (i-2) is so the second spectrum is offset only by 5000 and not 10000
);
Una forma lenta pero segura sería crear nuevas columnas y generar manualmente la fórmula para cada columna, pero funcionaría igual.
¡Espero que esto ayude!,
DS
Re: Graph Builder: Cómo hacer gráficos apilados con cierto desplazamiento para cada serie@txnelson En mi caso, tengo unas 50 variables que podría utilizar como definición de la serie de series. Creo que esas dos en la imagen que compartí son réplicas verdaderas, pero lo que estoy buscando no requeriría que dos filas enteras fueran idénticas para coincidir.
Supongo que si tuviera que diseñarlo, tal vez tendría un cuadro desplegable para una variable de "serie", para probar si alguna serie debe coincidir (y aparecer más cerca o no). Supongo que esta variable de serie también debería tener la capacidad de colorear los puntos, cambiar el tamaño o algo más. Y luego tal vez un control deslizante para ajustar el factor de escala. @hogi mencionado por la brecha entre los dos.
Estoy bastante seguro de que lo que acabo de describir no es posible actualmente en JMP, así que... Problema XY con la lista de deseos que acabo de dar, pero espero que eso aclare lo que estoy buscando y tal vez haya alguna forma GUI de hacerlo. Si no, @hogi El método de funcionaría.
Re: Graph Builder: Cómo hacer gráficos apilados con cierto desplazamiento para cada serieOh, interesante. Sí, eso sería suficiente, aunque no es una solución de creación de gráficos. Me pregunto si hay una manera de elegir dinámicamente la serie de colores y el factor de escala en función de la variable *serie* que le dice a jmp qué filas están en qué serie. Mmmmmmm. Tendré que pensar en eso.
Re: Graph Builder: Cómo hacer gráficos apilados con cierto desplazamiento para cada serieHola @ehchandler ,
Hasta donde yo sé, no existe una forma dinámica (es decir, usar Graph Builder solo) para crear espectros de compensación como lo que busca, aparte de crear manualmente nuevas fórmulas de columna que toman la columna de interés y agregan una compensación fija. Pero esto es exactamente lo que hace mi script de forma automatizada, lo que le ahorrará un tiempo considerable. De hecho, si va a hacer esto mucho y repetidamente, buscaría secuencias de comandos con JSL para hacerlo de forma automatizada. Ahorrará MUCHO tiempo en la manipulación dinámica del gráfico. A veces, primero es necesario configurar un análisis o gráfico inicialmente de forma dinámica para aprender a escribirlo, pero luego, una vez que lo tiene y puede aplicarle otras tablas de datos, es mucho más rápido que el código JSL lo haga por usted.Con las secuencias de comandos, puede ingresar y asignar a cada espectro un color específico, y puede hacerlo según el número de columna dentro de la tabla de datos, por ejemplo:
De acuerdo con la Guía de secuencias de comandos JMP JSL v16 , págs. 660-662, los esquemas de color estándar de JMP son:

Y luego, cada uno de esos colores se puede modificar posteriormente haciéndolos claro, medio claro, medio oscuro y oscuro:

O, si desea cambiar el esquema de color global, puede ir a Archivo > Preferencias, seleccionar Gráficos en la parte superior (a la izquierda) y luego hacer clic en el esquema de color llamado "Categórico", en la parte inferior derecha.

Luego aparece una pantalla como esta y, por ejemplo, si elijo el estilo cromático inferior y vuelvo a trazar los espectros, se ve así (el orden también se puede invertir):


El único inconveniente de ese método es que ahora este es el esquema de color global para todos los gráficos dentro de JMP, no solo en el que estás trabajando. Siempre puedes regresar y cambiarlo en Preferencias si lo deseas.
O, una vez que obtenga el gráfico que desea, siempre puede hacer clic derecho en un espectro de su elección y luego seleccionar Color de línea y elegir cualquier color preestablecido que se muestra, o incluso Otro... de una paleta de colores más grande. Pero esto puede ser lento si tienes muchos espectros.

Hay muchas maneras de lograr las mismas cosas en JMP, lo cual es genial, y depende en cierto modo de cuáles sean sus necesidades específicas y cuál sea su objetivo final en cuanto a qué método podría funcionar mejor.
¡Espero que esto ayude!,
DS