Cambiar el ancho de línea del generador de gráficos con la variable de superposiciónQuiero poder cambiar el ancho de línea en Graph Builder cuando tengo una variable de superposición especificada, pero no sé de antemano cuáles podrían ser los valores de esa variable (o cuántos valores puede haber). Probé lo siguiente en función de una publicación de la comunidad:
Names Default To Here(1);
Open("$SAMPLE_DATA/Big Class.jmp");
gb = Graph Builder(
Size( 534, 454 ),
Show Control Panel( 0 ),
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 3 ) ), Line( X, Y, Legend( 5 ) ) )
);
fbs = gb << XPath("//FrameBox");
For(i = 1, i <= N Items(fbs), i++,
frame = fbs[i];
seg = (frame << Find Seg("Line Seg"));
seg << Set Line Width(1);
);Pero esto sólo cambia el grosor de una de las líneas (en este caso, para :sex=="F").
¡Gracias!
Exploración y visualización de datosRe: Cambiar el ancho de línea del generador de gráficos con la variable de superposiciónFind Segs
¡Qué función tan útil! ¿Hay alguna documentación?
Re: Cambiar el ancho de línea del generador de gráficos con la variable de superposiciónHola Matthew,
La solución más sencilla es cambiar Find Seg por Find Segs . Esto buscará todos los segmentos de línea (hay dos, uno para cada sexo) y reemplazará el ancho por el que necesite.
Además, como solo hay un cuadro de marco (o un gráfico), no necesitamos el bucle For aquí. Encontré la publicación de la comunidad a la que hacías referencia y, en ese ejemplo, hay dos cuadros de marco.
Así que podemos simplificar tu código de la siguiente manera:
Names Default To Here(1);
Open("$SAMPLE_DATA/Big Class.jmp");
gb = Graph Builder(
Size( 534, 454 ),
Show Control Panel( 0 ),
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 3 ) ), Line( X, Y, Legend( 5 ) ) )
);
fbs = gb << XPath("//FrameBox");
seg = (fbs << Find Segs("Line Seg"));
seg << Set Line Width(1);
¡Espero que esto ayude!