在报表中显示动态数据表是否可以在报告/布局中显示数据表并使其动态,以便在过滤数据时仅显示所选项目?
我看到我可以将数据表添加到日志窗口,它只会添加选定的行,但我希望显示更加动态,并且是我已经使用其他图形、按钮构建的更大交互式布局的一部分,和过滤器。
回复:在报表中显示动态数据表请务必向 JMP 提交复制功能增强请求。 只需将其发送至:
support@jmp.com
回复:在报表中显示动态数据表实际上我对这个功能也不是很满意,因为它不允许我选择文本并复制它 - 这是我需要的主要功能。 它只允许复制整个列或整个表,而不是单个条目。 所以看起来我要回到滚动框+新数据框,并将滚动框大小固定为一个小正方形......回复:在报表中显示动态数据表好发现
回复:在报表中显示动态数据表好吧,我想通了。 我使用 Data Table Box() 而不是 << New Data Box(),并且在不使用滚动框的情况下它不会出现滚动条问题。 我仍然认为 scollbox() 函数的 size(h,v) 存在问题。
回复:在报表中显示动态数据表那对我不起作用。 滚动框(我放在数据表框周围)的宽度始终相同。 这只是改变了窗口的大小,创建了一堆空白区域。 滚动框函数中的 Size(h,v) 具有相同的作用......
回复:在报表中显示动态数据表看来如果你设置显示窗口的窗口大小,你就会得到你想要的
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp", invisible );
dtd = dt << subset( selected rows( 0 ), selected columns( 0 ), invisible );
nw = New Window( "Filter",
vlb = V List Box(
H List Box(
dt << Data Filter( Location( {2555, 44} ), Add Filter( columns( :sex ) ) ),
dt << Bivariate( Y( :height ), X( :weight ), autocalc( 1 ) )
)
),
dtddis = dtd << New Data Box()
);
nw << set window size(800,800);
nw << onclose( Close( dt, nosave ):close( dtd, nosave ) );
f = Function( {a},
dtddis << delete;
Close( dtd, nosave );
If( N Rows( dt << get selected rows ) > 0,
dtd = dt << subset( selected rows( 1 ), selected columns( 0 ), invisible ),
dtd = dt << subset( selected rows( 0 ), selected columns( 0 ), invisible )
);
vlb << append( dtddis = dtd << new data box() );
);
rs = dt << make row state handler( f );回复:在报表中显示动态数据表好的,可以,但滚动框内的 Size(h,v) 似乎无法正常工作。 滚动框的大小始终相同,并且 Size(h,v) 似乎只是在首次显示时推出了窗口的大小...... 我使用的是 JMP 12.2
回复:在报表中显示动态数据表您可以尝试将 New Data Box() 放置在 Scroll Box() 内,看看是否可以调整滚动框大小以将表格视图保持为您想要的尺寸。 关于字体大小,我不知道如何减小它们,因为这是所有文本框的全局设置
回复:在报表中显示动态数据表非常感谢,这正是我所需要的。 然而,我遇到一个问题,窗口内表格的格式很奇怪。 为了显示水平滚动条,我必须向下滚动到窗口内表格的末尾。 数据表框有格式选项吗? 还想让表格框中的文字变小。 谢谢。
回复:在报表中显示动态数据表这是可以做到的,但是存在一些复杂性。
首先,由于数据表无法使行不可见,因此您必须实际创建一个新的数据表,其中包含不希望显示的行,并从数据表中删除。 您正在显示的新数据框()或新数据视图()也必须随着选择(过滤器)的更改而被删除和附加。
要进行过滤的实际数据表可以具有行状态处理程序或用于生成新表的“更改时”类型的控件。 另外,我假设主数据表将是不可见的,允许用户只能看到 New Data Box() 正在查看的内容。
这个 JSL 会给你一个简单的例子
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp", invisible );
dtd = dt << subset( selected rows( 0 ), selected columns( 0 ), invisible );
nw = New Window( "Filter",
vlb = V List Box(
H List Box(
dt << Data Filter( Location( {2555, 44} ), Add Filter( columns( :sex ) ) ),
dt << Bivariate( Y( :height ), X( :weight ), autocalc( 1 ) )
)
),
dtddis = dtd << New Data Box()
);
nw << onclose( Close( dt, nosave ):close( dtd, nosave ) );
f = Function( {a},
dtddis << delete;
Close( dtd, nosave );
If( N Rows( dt << get selected rows ) > 0,
dtd = dt << subset( selected rows( 1 ), selected columns( 0 ), invisible ),
dtd = dt << subset( selected rows( 0 ), selected columns( 0 ), invisible )
);
vlb << append( dtddis = dtd << new data box() );
);
rs = dt << make row state handler( f );