<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Estoy escribiendo un script que generará un número de gráficos desde la plataforma del generador de gráficos. Me gustaría que el script sea dinámico para las columnas de la tabla de datos utilizadas en el análisis del generador de gráficos y también dinámico para las opciones de scalebox. Actualmente visualizo dos listas (también pueden estar en una matriz o incluso en una tabla de datos). La primera lista contendría todas las variables en la expresión del generador de gráficos. La segunda lista puede ser incluso una lista de listas para que pueda admitir varios gráficos. Contendría los valores a subsistir (escala min, escala max, parámetro / nombre de columna de la tabla de datos). Adjunto un ejemplo del código que estoy tratando de usar. Cualquier ayuda que alguien pueda ofrecer sería muy apreciada.
Gracias,
Mate
subM = lista ( parI, parE, minI, maxI );
testM = Lista ({"Parámetro interno A", "Parámetro externo B", 100, 200});
Para (i = 1, i
gb = Expr (
Generador de gráficos (
Mostrar panel de control (0),
Variables (X (: Sistema), X (: Ejecutar, Posición (1)), X (: Posición, Posición (1)), Y ( parI , Lateral ("Derecha")), Y ( cortar , Posición (1))),
Elementos(
Puntos (X (1), X (2), X (3), Y (2), Leyenda (7), Jitter (1)),
Puntos (X (1), X (2), X (3), Y (2), Leyenda (9), Jitter (1)),
Puntos (X (1), X (2), X (3), Y (1), Leyenda (8), Jitter (1))
)
SendToReport (
Despacho ({}, "Sistema", ScaleBox, {Mostrar marcas principales (1), Mostrar marcas menores (0), Etiquetas rotadas ("Automáticas")}),
Despacho ({}, "X1", ScaleBox, {Min (90), Max (190), Inc (10), Ticks menores (1)}),
Dispatch ({}, "X2", ScaleBox, {Min ( mini ), Max ( maxi ), Inc (10), garrapatas menores (1)}),
Despacho ({}, "X3", FrameBox, {Tamaño de marcador (3)})
)
)
);
Para (j = 1, j ) + 1, j ++,
Sustituto (gb, subMtestM)
);
gb
Espera (0);
);
Genero gráficos dinámicos usando el generador de gráficos usando el siguiente enfoque:
- Creo una cadena (por ejemplo, gb_expr) que contiene los comandos necesarios del generador de gráficos.
- Ejecuto la cadena usando eval (parse (gb_expr))
Este es un ejemplo que utiliza evalinsert como una forma conveniente de insertar variables en la cadena del generador de gráficos.
gb_expr = evalinsert ( "\ [
trend_chart_cc = Graph Builder (
Mostrar panel de control (0),
Variables (X (: ^ xaxis_col ^), Y (: ^ yaxis_rbox_value ^), Superposición (: ^ plot_cbox_value ^)),
Elementos(
Puntos (X, Y, Leyenda (2)),
Línea (X, Y, Leyenda (4), Orden de fila (0), Estadística de resumen ("Media"))
)
SendToReport (
Envío(
{}
"Graph Builder",
ContornoBox,
{Establecer título ("Número de casos")}
)
Dispatch ({}, ^ xaxis_col ^, ScaleBox, {Rotated Labels ("Automatic")}),
^ marker_text ^
Dispatch ({}, "Graph Builder", FrameBox, {Marker Size (3)}),
^ legend_text ^,
Envío(
{}
"título del gráfico",
TextEditBox,
{Establecer texto ("^ snap_name ^")}
)
)
);
] \ " ) ;