回复:将选定的本地数据过滤器参数动态放置到图表上的 y 轴标签一种选择是将本地数据过滤器也用作 X 组

或者您可以将其用作 Y 组并将其移至左侧

您还可以拆分数据并使用列数据切换器而不是本地数据过滤器,这很可能是最佳选择

在测试 Filter Change Handler 之前,我会尝试这些选项。
回复:将选定的本地数据过滤器参数动态放置到图表上的 y 轴标签@jthi .谢谢,但我看不出在我的情况下如何使用列切换器,因为我正在使用本地数据过滤器在“测试参数名称”列中的行之间切换。 我附上了我的示例数据表,其中保存了图表脚本。
(您建议的其他选项不是我希望图表的样子)
我可以举例说明如何使用 Filter Change Handler 吗?
回复:将选定的本地数据过滤器参数动态放置到图表上的 y 轴标签首先将您的数据拆分为被测参数名称然后使用 Column Switcher 绘制它
Names Default To Here(1);
dt = Open("$DOWNLOADS/ExampleDataTable.jmp");
dt_split = dt << Split(
Split By(:Tested parameter Name),
Split(:Measured Value),
Group(:Part ID),
Output Table("ExampleDataTable_SPLIT"),
Sort by Column Property
);
Close(dt, no save);
gb = dt_split << Graph Builder(
Size(534, 450),
Show Control Panel(0),
Variables(X(:Part ID), Y(:"Capacitance1 [pF]"n)),
Elements(Points(X, Y, Legend(5)), Smoother(X, Y, Legend(7))),
Column Switcher(
:"Capacitance1 [pF]"n,
{:"Capacitance1 [pF]"n, :"Capacitance2 [pF]"n, :slope, :"Voltage1 [V]"n,
:"Voltage2 [V]"n}
)
);
为了过滤器更改处理程序您可以从帮助页面或脚本索引中获取示例,您还需要一种更改 Y 轴标题的方法(如果我没记错的话,它只是一个文本框)。
回复:将选定的本地数据过滤器参数动态放置到图表上的 y 轴标签@jthi .谢谢。 我更愿意使用 Filter Change 处理程序(考虑到我拥有的数据量,我不喜欢行/列拆分,这可能会变得混乱)。
我看到过滤器更改处理程序返回所选项目中的行数。 如何返回我需要的选择名称(而不是行数)?
回复:将选定的本地数据过滤器参数动态放置到图表上的 y 轴标签使用 Filter Change Handler 来检测过滤器的变化(变化可能不是你每次都除外,但在这种情况下可能无关紧要)。 然后在与处理程序一起使用的函数中,例如,您可以获取过滤后的行并根据这些行检查哪些行测试参数名称已被选中,获取这些值的唯一值,构建字符串,然后更新 y 轴标题。
回复:将选定的本地数据过滤器参数动态放置到图表上的 y 轴标签@jthi . 谢谢,但每个测试参数的行数在我的数据集中是相同的,所以我无法区分测试参数名称基于每个函数返回的行数测试参数名称通过本地数据过滤器选择。 如果处理程序返回行名或行索引,它就可以正常工作。 我是否遗漏了什么,如果没有,我有什么选择?
回复:将选定的本地数据过滤器参数动态放置到图表上的 y 轴标签最有可能使用列切换器拆分数据仍然是最佳选择。
仅使用处理程序来检测过滤器值何时更新(您可以忽略行数)。 当您拥有过滤器更改处理程序时,您应该:
- 能够检测过滤器何时更新
- 使用参考你的过滤器获取过滤的行。 脚本索引具有此功能,我认为它类似于 << get filtered rows
- 根据步骤 2 中的那些行,您可以从 Tested parameter name 列中获取值
- 从步骤 3 中获取这些值的唯一列表(在这种情况下,关联数组 << 获取键可能就足够了)
- 根据第 4 步中的列表构建标题字符串
- 使用步骤 5 中创建的标题更新图形构建器的 y 轴
将选定的本地数据过滤器参数动态放置到图表上的 y 轴标签上我有一个三列数据。 第 1 列是“部件 ID”,第 2 列是“测试参数名称”,第 3 列是每个测试参数的“测量值”。
每个部件有 5 个测试参数,因此部件 ID 在每 5 行条目后发生变化。
我在 y 轴上绘制测试参数的“测量值”,在 x 轴上绘制“零件 ID”。
我在“测试参数名称”列上打开了本地数据过滤器,我在其中选择一个测试参数名称来查看与 PartID 相对应的数据趋势。 请参阅下面的示例。
当我在本地数据过滤器上选择参数时,我想在 y 轴标签上动态包含“测试的参数名称”。
例如,我希望 y 轴标签作为“名称”的测量值,其中“名称”是本地数据过滤器上的选定项目。
这在 JSL 中可行吗?如果可以,如何实现?

高级统计建模自动化和脚本编写内容组织数据存取数据探索和可视化大规模定制