Estoy tratando de dibujar en un gráfico alguna curva.Pero esa curva es diferente para algún conjunto de variables.Me pregunto si alguien tiene una buena manera de hacer que yfunction() cambie en función de lo que se selecciona en un filtro de datos local.Por ejemplo, si cambio la edad de 12 a 13, a continuación, quiero una onda coseno en lugar de una onda sinusoidal o algo así.
Nota: esto es para JMP en vivo, por lo que no creo que los controladores de cambio de filtro funcionen allí.Originalmente, solo los estaba trazando a todos con un dibujo por variable en cada uno individualmente, pero eso tampoco funciona en JMP en vivo y no puedo entender por qué.
Names default to here( 1 );
dt = open("$SAMPLE_DATA\Big Class.jmp");
dt << Graph Builder(
Variables( X( :height ), Y( :weight ) ),
Elements( Points( X, Y, Legend( 43 ) ), Smoother( X, Y, Legend( 44 ) ) ),
Local Data Filter(
Add Filter(
columns( :age ),
Where( :age == 12 ),
Display( :age, N Items( 6 ) )
)
),
SendToReport(
Dispatch(
{},
"height",
ScaleBox,
{Min( 47.4910973084886 ), Max( 78.4293207137927 ), Inc( 5 ),
Minor Ticks( 1 )}
),
Dispatch(
{},
"weight",
ScaleBox,
{Min( 43.4685580652897 ), Max( 152.924994106993 ), Inc( 20 ),
Minor Ticks( 1 )}
),
Dispatch(
{},
"Graph Builder",
FrameBox,
{Add Graphics Script(
5,
Description( "" ),
Pen Color( "red" );
Pen Size( 3 );
Y Function(
49.5348183760347 + 101.831529865667 / 2 * (1
+Sine( (2 * Pi() * (x - 50)) / 16.6 )),
x
);
)}
)
)
);
Este objetivo es fácil si no te importa llevar un diario. Simplemente puede emplear una función de usuario en la llamada a Y Function() y definirla fuera del inicio de Graph Builder. Luego use un controlador de estado con el filtro de datos para definir una nueva función y envíe el cuadro de cuadro << Remostrar.
Si necesita llevar un diario, entonces no desea utilizar ninguna variable. En ese caso, agregaría un script de gráficos que usa solo valores literales, y eliminaría y agregaría uno nuevo basado en el filtro.
¡Divertirse!
Eso no funcionaría para JMP en vivo, ¿verdad?Por lo que he visto, a JMP en vivo REALMENTE no le gustan las secuencias de comandos.Lo intentaré de cualquier manera.
Estoy bastante seguro de que JMP Live no ejecuta scripts de usuario arbitrarios (quizás ninguno) en el servidor.
Quit();
o
while( 1, 0 );
o
x = j( 4e9, 1, 0);
o
wait( 1e6 );
cualquiera de los cuales podría aparecer en un script gráfico, interrumpiendo el comportamiento del servidor.
El caso de uso de JMP Live gira en torno a permitir que su audiencia divida los datos utilizando las herramientas integradas de JMP a través de una GUI que usted crea.
- vinculación de gráficos para el comportamiento de selección entre gráficos
- usar un filtro de datos para dividir los datos en subconjuntos
- profundizar en subconjuntos (tal vez... ha pasado mucho tiempo desde que miré JMP Live... en realidad el público versión.)