你好,
我正在尝试使用 Graph Builder 或通过脚本 JSL 创建一个 Graph,仅使用选定的行,而不影响表的其余部分。 示例如下:
我有一张这样的桌子

我需要创建类别 A 的值的散布图 - 仅。 我需要为某些计算保留类别 B,即定义也将作为水平线添加到绘图中的限制。 由于我需要同时对多个变量执行此操作,如果您知道不需要创建子集表的解决方案,我会更愿意 - 这将导致我的脚本为我需要分析的每个变量创建一个新表. 或者,如果您知道使用子集表的解决方案,但能够通过保持绘图实际来在最后关闭新表,这对我来说是可行的。 我尝试创建子集表并取得了良好的效果,但是当我关闭它时,值消失了,我不想以打开或隐藏多个表而告终。
我还尝试在运行图形生成器之前隐藏和排除所有包含 B 的行,结果很好,但后来当我清除行语句时,所有值都再次出现在图形中。 我需要保留 B 的值而不隐藏和排除,因为我还想添加一个比较每个组(A 和 B)的箱线图。
欢迎任何想法!
你可以很容易地做你想做的事。
下面是一个使用 Big Class 示例数据表的示例。

生成上图
- 打开样本数据表,Big Class
- 打开图形生成器
- 要将 12 岁儿童与所有个体进行比较,只需创建一个虚拟列,其中仅填充 12 岁儿童的权重
- 右键单击重量列并选择“公式”
- 当公式对话框打开时,右键单击新的虚拟列“Transform(weight)”并选择“Rename”
- 将列重命名为“12 岁体重”
- 现在转到实际公式并输入以下公式
If( :age == 12, :weight, . )
- 点击确定
- 在图形生成器窗口中,
- 将 weight 和 Age 12 Weights 列拖到 Y 轴放置区域
- 右键单击图形并选择点=>更改为=>箱线图
然后会产生上面的情节
我发布是因为我有一个类似的问题......但我认为最好开始一个新线程。 Mods,如果可能的话,请随时删除此帖子。
非常优雅的解决方案,它正是我所需要的。 太感谢了!
这是一个简单的示例,使用您的示例数据创建一个带有本地数据过滤器的图表,仅选择 A 组数据,然后从显示中隐藏数据过滤器

Names Default To Here( 1 );
dt = New Table( "Example",
Add Rows( 8 ),
New Column( "ID", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1, 2, 3, 4, 5, 6, 7, 8] ) ),
New Column( "Values",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [1.1, 1.2, 1.3, 1.4, 1, 0.9, 0.8, 1.2] )
),
New Column( "Category", Character, "Nominal", Set Values( {"A", "A", "A", "A", "B", "B", "B", "B"} ) )
);
// Here is the graph code
biv =dt << Bivariate(
Y( :Values ),
X( :ID ),
Local Data Filter(
Close Outline( 1 ),
Add Filter( columns( :Category ), Where( :Category == "A" ) )
)
);
// Add this line if you do not want the collapsed Local Data Filter displayed
(report(biv)<<TOP parent=""></TOP>
这应该给你一个好的开始