Supresión de cuadro de texto en gráfico con condiciones<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hola a todos,
Soy nuevo en jsl y en las secuencias de comandos en general, pero estoy tratando de crear gráficos de variabilidad basados en las condiciones de una columna.
Cuando uso where debajo de la configuración, genera un cuadro de texto sobre el gráfico que coincide con toda la cadena dentro de where (y se repite para cada gráfico que se crea). ¿Hay alguna forma de suprimir esto? Causa problemas de visualización cuando la condición es larga y se agregan múltiples gráficos.
p.ej:
dt = Abrir("$SAMPLE_DATA/Clase Grande.jmp");
dt<

Pasar por la interfaz no muestra este problema, pero el script parece similar:

Re: Suprimir cuadro de texto en gráfico con condicionesFrustrantemente, esto sigue siendo un problema.
También es frustrante que la mayoría de la documentación/soluciones para este problema no cubren una amplia gama de situaciones, o lo fuerzan al iterar a través de la estructura de árbol.
JMP tiene capacidades xpath, que tampoco están bien documentadas. Supongo que esto se debe a que xpath es una sintaxis estándar de la que JMP no es propietario, por lo que no sienten la necesidad de proporcionar ninguna documentación a los usuarios que no estén familiarizados.
Esta es la única línea de código que utilizo para deshacerme de estos molestos cuadros de texto, básicamente en cualquier situación en la que surjan. Debe colocar un envoltorio alrededor de cualquier informe que contenga el cuadro de texto ofensivo, si aún no hay uno.
Para tomar prestado el nombre de txnelson de dicho envoltorio de cuadro de contorno:
(ob << xpath("//TextBox[contains(text(),'Where(')]")) << delete;<BR />Si lo desea, se pueden usar secuencias de comandos xpath similares para capturar el texto real del cuadro, tal vez realizar algún procesamiento para que la información sea más clara y luego insertarlo en el título de otro cuadro de esquema o grupo de ajuste: ¡cuál sería la funcionalidad deseada de guardar un informe en un script en primer lugar!
Para leer más sobre xpath en JMP, recomiendo leer este informe [PDF] publicado hace un tiempo por otro usuario de JMP. El PDF describe la sintaxis de xpath en relación con jmp, con ejemplos útiles.
Re: Suprimir cuadro de texto en gráfico con condicionesUna alternativa a eliminar el cuadro de texto es simplemente ocultarlo.Esconderse funciona bien para el caso que mencionó Jim, pero puede que no sea ideal para todas las situaciones.
transmisión exterior [ Caja de texto ( 1 )] << Esconder( 1 ) ;
Wendy
Re: Suprimir cuadro de texto en gráfico con condicionesSolo quiero decir que yo también me encuentro quitando este cuadro de texto Where a menudo, tanto por la razón que muestra como porque creo que esta cláusula en letra pequeña no es tan buena como etiqueta, puede perderse visualmente fácilmente.
Estoy de acuerdo con Ian en que la información puede ser útil o incluso esencial, pero cuando estoy creando un informe personalizado usando JSL de todos modos, normalmente hablo con los encabezados de cuadro de esquema redundantes y los modifico para proporcionar esta información de manera mucho más prominente y sin los molestos problemas de diseño de los cuadros de textoEntonces, donde tiene esas grandes etiquetas en negrita que dicen "Indicador de variabilidad" y "Gráfico de variabilidad para el peso", las modificaría para agregar SEX = M o lo que sea allí donde sea más visible.
Además, a menudo tengo muchos gráficos, que varían en número según los datos, etc., por lo que a veces uso este método tosco para eliminar todos los cuadros de texto Where ...
para(i=1000,i>0,i--,
try(if(contains(nw[textbox(i)]<
);
Re: Suprimir cuadro de texto en gráfico con condicionesMuchas gracias Mark - Ahora lo entiendo.
Re: Suprimir cuadro de texto en gráfico con condicionesMe preguntaba lo mismo. Gracias
Re: Suprimir cuadro de texto en gráfico con condicionesGracias por la respuesta. El texto adicional estaba causando problemas cuando estaba en el cuadro de lista H. El texto se mostraría a un lado, lo que generaría mucho espacio muerto adicional. Plus era el texto genérico, no evaluado.

Re: Suprimir cuadro de texto en gráfico con condiciones¡Gracias! Esto funciona para mí.
dt = Abrir("$SAMPLE_DATA/Clase Grande.jmp");
resume(lev = por(:sexo, :edad));
k=matriz asociativa(lev[1])<
nk = nielementos(k);
Nueva Ventana("Var por Sexo y Edad", main = V List Box());
Para(i=1,i<=nk,i++,
loc1 = loc(lev[1],k );
vcwin = H Cuadro de lista ();
Para(j=1,j<=nfilas(loc1),j++,
ob=OutlineBox("",dt<] & :edad == num(lev[2][loc1])),Gráfico de Desv Estándar(0)));
ob[Cuadro de texto(1)]<
vcwin<
);
principal<
);
Re: Suprimir cuadro de texto en gráfico con condicionesYo advertiría contra la eliminación de los niveles de la variable de grupo 'Por' ya que, afirmando lo obvio, sin ellos no está claro con qué 'subconjunto' se relaciona cada gráfico.
Pero, si entiendo correctamente, desea acortar las etiquetas en los nodos de contorno. Si crees que tienes que hacer esto, puedes intentarlo de esta manera:
Nombres predeterminados a aquí ( 1 ) ;
dt = Abierto ( "$SAMPLE_DATA/Gran Clase.jmp" ) ;
// Gráfico de variabilidad con el grupo 'Por'
v.c. = dt << tabla de variabilidad ( Y ( : Peso ) , X ( : Edad ) , Por ( : sexo )) ;
// capa de informe
representante virtual = v.c. << informe ;
// Obtener los niveles del grupo 'Por'
niveles = Matriz asociativa ( Columna ( dt , "sexo" ) << obtener valores ) << getKeys ;
// Actualizar (acortar) los títulos de los nodos del esquema en el informe
para ( gramo = 1 , gramo <= Nartículos ( representante virtual ) , gramo ++,
representante virtual [ gramo ][ ContornoCuadro ( 1 )] << establecer título ( Carbonizarse ( niveles [ gramo ])) ;
) ;
Para comprender cómo funciona, consulte 'Ayuda > Guía de secuencias de comandos' o 'Ayuda > Índice de secuencias de comandos'.
Sin embargo, tengo curiosidad por saber cuáles son los 'problemas de visualización' que resultan de dejar las cosas en paz.
Re: Suprimir cuadro de texto en gráfico con condicionesEste es el método que utilizo para deshacerme de la cláusula Where.
Sospecho que puede haber una manera de hacer referencia a él desde el resultado del informe de la plataforma de variabilidad, pero dado que en realidad se muestra antes del resultado de las plataformas, he tenido éxito al envolver una Nueva ventana alrededor del resultado, con un contorno "Vacío" incrustado. cuadro, y luego hacer referencia a él desde allí.
Nombres predeterminados hasta aquí ( 1 ) ;
dt = Abierto ( "$SAMPLE_DATA/Gran Clase.jmp" ) ;
// Formalizar la visualización en una Nueva ventana con un vacío
// cuadro de contorno para permitir la referencia del cuadro de texto Dónde
// que precede a la visualización del gráfico de variabilidad
Nueva ventana ( "Mostrar" ,
transmisión exterior = Cuadro de esquema ( "" , dt << tabla de variabilidad ( Y ( : Peso ) , X ( : Edad ) , Dónde ( : Sexo == "METRO" ) ) )
) ;
// Eliminar el cuadro de texto que contiene la cláusula Where
transmisión exterior [ Caja de texto ( 1 )] << borrar ;