Spotfire® 用户指南

使用属性处理列选择

此示例说明如何使用文档属性来控制文本区域中轴的列选择。如果您已经定义了要使用的合适属性,则可以通过右键单击并选择“从属性设置”将其直接连接到轴。

开始之前

此处介绍的功能必须使用已安装的客户端进行创建。

关于此任务

在下面的条形图中,从文本区域中选择要用作条形图着色依据的列,而非在图表中的“颜色依据”选择器上配置。文本区域包含一个属性控件(在此示例中为下拉列表形式),仪表板用户可以在其中选择要用作条形图着色依据的列。普通“颜色依据”选择器在条形图中不再可用。



注: 只可在轴上使用字符串属性。在此上下文中,属性应包含可被视为列或列表达式的值。属性的字符串值将解释为列名称或属性表达式。有关属性表达式语法的详细信息,请参见表达式中的属性

按步骤操作,创建此类型的分析。

开始之前

此处介绍的某些功能只能使用已安装的 Spotfire 客户端进行创建或访问。

过程

  1. 创建或编辑文本区域
  2. 在编辑模式下,向文本区域添加属性控件。在此示例中,我们添加一个下拉列表。


  3. “属性控件”对话框中,定义要在下拉列表中提供让用户选择的项目。但是,要控制的实际属性尚未存在。要创建该属性,请单击“新建”以打开“新建属性”对话框,您可以在其中命名该属性以及指定其数据类型。在此示例中,我们将其称为“SelectColorBy”。


  4. 当该属性存在并处于选定状态时,定义其能够拥有的值。在此示例中,属性值为“Category”或“Type”,因为您想按这两个列之一对条形图进行着色。可以在“属性控件”对话框下部进行设置。可以通过“列选择”设置这些属性值,使用“or”表达式定义要包含的两个列。


    提示: 您可以使用任何搜索表达式来确定要在属性控件中显示的列。例如,使用 datatype:integer 可仅显示整数列,使用 datatype:real 可仅显示实数列,使用 "A or B" 可仅显示以字母 A 或 B 开头的列等等。您还可以搜索特定的列属性。“选择列”对话框是创建列属性以及基于这些属性选择列的快捷方式。例如,如果您已添加名为 included.column(具有默认值 false)的自定义列属性,并希望变为可用的这些列的值为 true,则使用 included.column:true。有关搜索表达式的详细信息,另请参见在 Spotfire 客户端中搜索
  5. 最后一步是将属性连接到应该对所选属性值做出反应的位置,在此示例中为条形图中的“颜色依据”选择器。右键单击该选择器,选择“从属性中设置”,然后选择新属性。


  6. 单击“确定”

结果

颜色轴现在使用所选属性中的值来确定选择哪个列。

使用多个文档属性来确定要在轴上显示的列

如果您希望轴显示多个值或某个层级,则可以向轴表达式添加多个属性。

过程

  1. 右键单击所需轴的轴选择器,然后从弹出式菜单中选择“自定义表达式”
  2. 使用文本语法将所需属性插入表达式中。例如,${MyProperty}.
    有关可用于属性的不同语法的详细信息,请参见表达式中的属性
    有关如何添加新属性的信息,请参见添加或编辑文档属性。请注意,此属性类型的数据类型必须为 String
  3. 向表达式中添加任意数量的属性。
    对于多个列基于不同属性的连续轴,请用逗号分隔每个属性:
     ${MyProperty}, ${MyProperty2}, ${MyProperty3}
    对于分类轴,请指定如何使用 NEST 或 CROSS 处理类别:
    <[${MyProperty}] NEST [${MyProperty2}] NEST [${MyProperty3}]>
    如果字符串值由多个词组成(例如“My Value”),您必须使用 $esc() 或者在属性表达式两边加上括号,以返回列:[${MyProperty}]
  4. 如有需要,您可以编辑表达式以进行更复杂的计算。准备好后,单击“确定”

结果

图表轴使用属性的默认值作为不同的列。您可以在文本区域中添加属性控件,如前面的示例所述,以便轻松更新属性值。