可以锁定动画变量的下限?你好,
我发现动画功能非常有用,可以快速扫描我的数据。
我有一个三列的数据集,时间,变量'X'和变量'Y'。绘制X vs. Y和随着时间的推移运行动画是有意义的,但似乎我只能设置开始和结束时间,并保持与时间推移相同的固定时间跨度。
我想要做的是让上限时间过滤器绑定扫描从0到时间X但保持较低时间过滤器绑定保持为零这基本上会给我一个无限的持续存在的X vs. Y情节。
有谁知道这是否可能?谢谢!
Re:可以锁定动画变量的下界吗?Bubble Plot平台似乎能够执行我需要的但是它的最大速度非常慢。我的数据是10个样本/秒的样本,理想情况下我希望动画运行速度提高100倍。
Re:可以锁定动画变量的下界吗?我想我的例子可能使我最初的问题出轨了。
我只是及时选择了四个快照来说明进展,因为我不知道如何保存我想要生成的动画的GIF或视频。
我想创建一个我的数据的动画,其中时间变量的下部过滤器边界保持在该列中的最小值(时间= 0)并且上限“动画”从时间= 0到结束和循环。
Re:可以锁定动画变量的下界吗?解决方案的另一种选择。 使用“或”选项而不是“添加”添加相同的过滤器4次。 下图显示了它的外观。 如果您只想要某些过滤器,请单击所选滑块的红色热点,然后单击“清除选择”

Re:可以锁定动画变量的下界吗?快速而肮脏的方法是直接改变图形构建器脚本文本,减少结束年份但固定的起始年份。您可以生成一大堆直接重叠的图形构建器窗口,然后在适当的等待时间内按顺序关闭它们以提供所需的效果。Re:可以锁定动画变量的下界吗?吉姆,嗨,
如果您查看CO2.jmp样本数据集。
作为我想要做的一个简单示例,将在y轴上绘制“CO2”,在x轴上绘制“月”,并使用本地数据过滤器动画扫描“年和月”列,但保持较低-bound静态,而upperbound可以自由移动,然后循环回到开头。
下面是它的外观的四个快照。

Re:可以锁定动画变量的下界吗?首先是我自己的功能请求的无耻插件:如果嵌套数据过滤器上下文框可能是相互依赖的,这将很容易。
希望有人知道一种更简单的方法,但我对类似情况的解决方法是使用该过滤表来对数据表进行子集化并构建图表,如下所示:

Names default to here( 1 );
dt = Open( "$Sample_data/Time Series/Raleigh Temps.jmp" );
dtfltrd = .;
enddate_unused = Date dmy( 1, 1, 1990 );
UpdateGraph = function( {enddate},
//Close the subset data table
Try( dtfltrd << Close Window; );
//Make a subset table linked to the original table that is filtered based on the slider
dtfltrd = dt << Subset(
Private,
Rows( Loc( ( Column( dt, "Month/Year" ) << Get values) <= enddate ) ),
Link to original data table( 1 )
);
//Remove the existing graph
Try( (bb_graph << Child ) << Delete );
//add a new graph that only contains data in the subset data table
bb_graph << Append(
dtfltrd << Graph Builder(
Size( 553, 561 ),
Show Control Panel( 0 ),
Variables( X( :Temperature ), Y( :Predicted Temperature ) ),
Elements( Smoother( X, Y, Legend( 508 ) ), Points( X, Y, Legend( 509 ) ) ),
Local Data Filter(
Add Filter(
columns( :Name( "Month/Year" ) )
),
Animation( Animate Column( :Name( "Month/Year" ) ), Animate Rate( 4 ) )
)
)
);
//Update text box with the filtered date
tb_enddate << Set Text( Format( enddate, "yyyy-mm-dd" ) );
);
win = New Window( "Animation",
H List Box(
V List Box(
H Center Box( Text Box("Set Max Date:", Set Font Style( "bold" ) ) ),
H Center Box( tb_enddate = Text Box() ),
H Center Box( sb_enddate = Slider Box(
Col Min( Column( dt, "Month/Year" ) ),
Col Max( Column( dt, "Month/Year" ) ),
enddate_unused,
UpdateGraph(enddate_unused)
) ),
<< Margin( 10 )
),
bb_graph = Border Box()
)
);
//Put the first graph in the box
UpdateGraph( Date mdy( 1, 1, 1990 ) );
Re:可以锁定动画变量的下界吗?您能否提供一个您正在尝试为其设置值的数据和显示示例?这肯定有助于确保我理解您的要求。
Re:可以锁定动画变量的下界吗?吉姆,嗨,
感谢您的答复。通过右键单击轴并设置最小值,我不确定您的意思。
我有一个Y vs.的情节 X但是我想要运行的动画超过第三个变量(时间),因此没有轴,只有数据过滤器。
Re:可以锁定动画变量的下界吗?如果右键单击要固定为0的轴并将轴的最小值设置为0,则可以使用本地数据过滤器,最小值将保持静态。 下面是一个示例脚本示例
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\big class.jmp" );
Bivariate(
Y( :height ),
X( :weight ),
Automatic Recalc( 1 ),
Local Data Filter( Add Filter( columns( :age ), Display( :age, Size( 160, 90 ), List Display ) ) ),
SendToReport( Dispatch( {}, "2", ScaleBox, {Min( 0 )} ) )
);