等高线图,在JSL中设置X和Y范围在JSL中创建轮廓图时,是否可以为X和Y的最大值和最小值设置固定的(预定的)值? 即要定义轮廓图将覆盖的区域,可以在“ X / Y轴设置”对话框中手动完成?
我的数据集覆盖x和y的不同范围,但我希望所有轮廓图具有相同的x和y范围。
就像是:
Contour Plot(
X( :X_col, :Y_col ),
Y( :data ),
X_minimum(-75000),
X_maximum(75000)
)
(这显然不起作用。)
图形脚本编写Re:等高线图,在JSL中设置X和Y范围可以发送到等高线图的消息记录在脚本索引中,等高线图选项下。您正在寻找的是“指定轮廓”消息。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Little Pond.jmp" );
obj = dt << Contour Plot( X( :X, :Y ), Y( :Z ) );
obj << Specify Contours(
Min( -4 ),
Max( 8 ),
N( 4 )
);
Re:等高线图,在JSL中设置X和Y范围感谢您的快速答复,但这设置了Z范围,但是我想做的是设置轮廓图的XY范围。 我之前曾尝试将手动处理的结果保存到脚本窗口,但最终得到了以下结果:
SendToReport(
Dispatch(
{},
"1",
ScaleBox,
{Min( -75000 ), Max( 75000 ), Inc( 20000 ), Minor Ticks( 0 )}
)
)我无法使用JSL将其合并到Contour Plot平台的调用中。
Re:等高线图,在JSL中设置X和Y范围
您的意思是注册成立吗?
您的日志窗口怎么说?
Re:等高线图,在JSL中设置X和Y范围此方法有效,但仅适用于“指定轮廓()”命令。 如果我删除这一行,日志窗口将记录:
Cannot find ScaleBox[ "1" ] at {}
Cannot find ScaleBox[ "2" ] at {}不幸的是,我不想手动定义轮廓极限(以Z为单位),我对JMP自动执行此操作感到满意。 我的数据集非常大,并且我从中创建了多个轮廓图,因此可以手动计算每个轮廓的最大值和最小值并将其传递给“指定轮廓()”命令,但有点尴尬。
Re:等高线图,在JSL中设置X和Y范围如果要更改X轴值而不是轮廓值,则可以通过更改X轴的AxisBox值来设置。
。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Little Pond.jmp" );
obj = dt << Contour Plot( X( :X, :Y ), Y( :Z ) );
Report( obj )[AxisBox( 2 )] << Min( 100 ) << Max( 300 );

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Little Pond.jmp" );
obj = dt << Contour Plot( X( :X, :Y ), Y( :Z ) );
Report( obj )[AxisBox( 2 )] << Min( -100 ) << Max( 400 );
回复:轮廓图,在 JSL 中设置 X 和 Y 范围谢谢,吉姆,这就是我要找的!
一个小细节 - 如前所述,我使用“By”属性创建了多个图。 所以我不得不遍历所有 obj 元素:
n = N Items( obj );
For(i = 1, i <= n, i++,
Report( obj[i] )[AxisBox( 1 )] << Min( -75000 ) << Max( 75000 ) << Inc( 25000 );
Report( obj[i] )[AxisBox( 2 )] << Min( -75000 ) << Max( 75000 ) << Inc( 25000 );
);
这有效,但如果有更优雅的方式,请告诉我。