Forzar mapa completo con conjunto de datos parcialesHola,
Espero que alguien pueda ayudar con alguna orientación aquí. Como parte de una generación de informes más grande, estoy generando mapas de calor de obleas con el siguiente script:
Graph1 = dt << Graph Builder (
Tamaño (300, 300),
Mostrar panel de control (0),
Mostrar pie de página (0),
Borde del grupo Y ("izquierda"),
Variables (
Grupo X (: Col, Título de la demostración (0)),
Grupo X (: ChipCol, Mostrar Título (0)),
Grupo Y (: Fila, Mostrar Título (0)),
Grupo Y (: ChipRow, Título de la demostración (0)),
Color (: test_value)
)
Donde ((: ReportLevel == Report_Level &: lot == this_lot &: wafer == this_wafer)),
Por (: VarDescription),
Elementos (Heatmap (Leyenda (13)),
SendToReport (
Despacho ({}, "título del gráfico", TextEditBox, {Set Text ("")}),
Dispatch ({}, "X title", TextEditBox, {Set Wrap (2)}),
Despacho ({}, "Título de Y", TextEditBox, {Set Wrap (2)})
)
)
Tengo hasta 150 valores posibles para: VarDescription y descubrí que ejecutar esto en un bucle para crear cada mapa individual, adjuntar el diario y cerrar el mapa fue muy torpe. Descubrí que permitir que el creador de gráficos creara todos los mapas a la vez con la declaración By (: VarDescription) era mucho más fluido, y para crear mi diario, puedo tomar los mapas individuales de las posiciones de la matriz en el objeto gráfico. Lo que me tiene en un aprieto es que obtener un mapa completo se basa en tener valores para TODOS los sitios, de lo contrario obtengo mapas parciales y consolidados. Incluso si solo he probado algunos sitios, quiero que se muestre todo el mapa para una consideración espacial. En mi tabla de datos, estoy incluyendo un puñado de filas de referencia (ficticias) que representan valores en blanco para todas las ubicaciones en la primera columna y la primera fila. Esto efectivamente forzará la visualización del mapa completo en el generador de gráficos cuando se incluyen las filas "ficticias". Donde estoy atascado es cómo incluir estas filas de referencia para cada mapa cuando se usa la instrucción By (: VarDescription) en el generador de gráficos en lugar de usar una declaración de filtro (Where). No creo que haya una manera de hacerlo en la creación inicial de los mapas. ¿Hay una manera de anexar datos a un objeto gráfico después del hecho? ¿O modificar el filtrado generado? Me he dado cuenta de que los mapas individuales en la revista terminan con filtros modificados, asumo generados por la declaración By (). Como una solución alternativa que se ajusta a este enfoque, he considerado simplemente hacer filas "ficticias" para todos: posibilidades de VarDescription pero la tabla de datos se volvería tremendamente grande y desordenada. Estoy tratando de evitar eso.
¡Gracias!
Re: Forzar mapa completo con conjunto de datos parcialJim - ¡Gracias! Este es un excelente enfoque. He estado aprendiendo JMP sobre la marcha y creo que parte de lo que hizo un enfoque en bucle para cada trama tan torpe al principio fue mi inexperiencia con la generación de gráficos y tablas invisibles para la manipulación y el cierre detrás de las escenas. Me gusta la idea de crear una plantilla de esta manera y simplemente rellenar datos donde sea que exista. Probablemente necesitaré revisar una buena parte de mi script, ya que hay muchos procesamientos diferentes que estoy haciendo, pero a la larga será para mejor. ¡Gracias de nuevo!
Cory
Re: Forzar mapa completo con conjunto de datos parcialAquí hay un guión que creo que le dará lo que quiere. Generará todos los wafermaps en una ventana de diario. Dejé fuera la cláusula Where () de su secuencia de comandos de Graph Builder, porque no tenía los valores disponibles, pero debería poder agregar la línea sin problemas reales.
Names Default To Here( 1 );
dt = Current Data Table();
// Create the empty wafer map data set
dtWaferMap = dt << Summary(
private,
Group( :Col, :ChipCol, :Row, :ChipRow ),
Freq( "None" ),
Weight( "None" )
);
dtWaferMap << delete columns( "N Rows" );
// Get a list of all of the VarDescriptions
Current Data Table( dt );
Summarize( dt, byVarDes = by( :VarDescription ) );
// Create the output journal
NW = New Window( "Heat Maps", <<JOURNAL></JOURNAL>

Re: Forzar mapa completo con conjunto de datos parcialEn realidad, había empezado con Page () mucho antes, pero el problema es que solo funciona si todos los mapas describen subconjuntos del mismo parámetro ya que hay una leyenda / escala común. Realmente necesito que cada mapa sea un parámetro diferente, y By () en realidad crea gráficos discretos.
Re: Forzar mapa completo con conjunto de datos parcialInventé algunos datos de muestra utilizando su estructura de datos y creé una réplica de su mapa de calor. Luego agregué un segundo conjunto de valores VarDescription, con solo un subconjunto de las celdas. Luego, en lugar de usar un "BY", coloqué la VarDescription en el área de la página y obtuve lo siguiente

El problema con la página es que solo permite valores de 100 páginas. Sin embargo, esto se puede superar fácilmente mediante el subconjunto de sus datos en una muestra de 100 páginas.
Aquí está el código generado por Graph Builder
Graph Builder(
Size( 418, 646 ),
Show Control Panel( 0 ),
Show Footer( 0 ),
Y Group Edge( "Left" ),
Variables(
Page( :VarDescription ),
Group X( :Col, Show Title( 0 ) ),
Group X( :ChipCol, Show Title( 0 ) ),
Group Y( :Row, Show Title( 0 ) ),
Group Y( :ChipRow, Show Title( 0 ) ),
Color( :test_value )
),
Elements( Heatmap( Legend( 33 ) ) ),
SendToReport( Dispatch( {}, "graph title", TextEditBox, {Set Text( "" )} ) )
);
Re: Forzar mapa completo con conjunto de datos parcialSolo como seguimiento, busqué un poco más en los mapas de formas. Parece que podría funcionar de alguna manera, pero no veo cómo adoptar fácilmente el formato row / col, subrow / subcol de mis gráficos, lo que tiene importancia para nuestra aplicación. Supongo que podría hacerlo por fuerza bruta. Los mapas que estoy generando no se usan simplemente como una representación espacial del producto final en coordenadas x / y. Se utilizan para direccionar partes y comunicarse rápidamente con otras personas. Tratar con x / y simplemente agregaría otra capa de traducción que es un poco torpe para nuestros propósitos.
Re: Forzar mapa completo con conjunto de datos parcial
Fila y Col básicamente definen la cuadrícula del mapa. ChipRow y ChipCol son esencialmente sub-fila y sub-columna.
Este es un ejemplo de salida que se genera para cada único: VarDescription. Así es como aparece cuando hay datos para todos los sitios.

Lo que estoy tratando de hacer es forzarlo para que se vea completo, incluso con datos parciales. Las filas ficticias logran esto y entiendo esto.

Sin el beneficio de las filas ficticias, este es el aspecto que tendría ...

No he explorado un mapa de formas, pero con un poco de trabajo adelantado, esa podría ser la mejor manera de hacerlo. Puedo investigarlo un poco más.
Re: Forzar mapa completo con conjunto de datos parcialEstoy tratando de replicar su problema.
Un par de preguntas:
¿Podrías insertar una captura de pantalla de tus resultados?
¿Cuáles son las definiciones de Row y ChipRow y de Col y ChipCol?
¿Has explorado usando un mapa de forma?