充分利用 Looker 可视化图表实战宝典:条件格式自定义

突出显示符合(或不符合)特定条件的值,让用户快速了解数据趋势。此模式通常在 Excel 或其他电子表格应用中称为“条件格式”

例如,本页面在可视化图表设置中直接使用条件格式部分中的以下表格可视化图表,可帮助用户确定用户增长的可能正值或负值:

Looker 通过以下几种不同的方式支持在可视化图表中使用条件格式:

  • 使用表格计算和表情符号。如果确定格式的条件需要直接在 Looker 探索中创建,则此方法非常合适。参考文档
  • 使用文本和表格图表可视化设置中的内置选项。
  • 使用 html LookML 参数。如果推动设置格式的条件在针对给定字段的分析中保持一致,这非常适合用于值的格式设置。

本实战宝典提供了最后两种方法的教程:

可视化设置中的条件格式设置

您可以使用可视化图表设置,在表格图表单值可视化图表单记录可视化图表中应用条件格式。

本部分介绍了如何使用可视化图表修改菜单中提供的可视化图表设置,在表格图表中使用条件格式设置。

请参阅充分利用 Looker 实战宝典中的利用单个值可视化结果呈现大量信息诀窍,获得有关单值可视化中的条件格式的分步指南。

所需要素

前提条件

要使用条件格式创建表格可视化,需要执行以下操作:

示例

某营销团队想要查看每个月的新用户数量(按年龄段细分),以便更好地了解对每个月推出的营销申诉的反响。

表格可视化和“探索”数据表格显示“用户数”,按“创建月份”分组,并按 8 个“用户年龄层级”列(10-19、20-29、30-39,最多 80 及以上)进行透视。

对于部分用户来说,默认的表格可视化图表可能难以解析。您可以在可视化图表设置中使用条件格式,对照目标比较和对比值或设置规则,从而让数据更加清晰,便于用户理解。

在本例中,营销团队希望将表中的值与以下条件进行比较:

  • 正增长(绿色)- 新用户数达到 50 人的月份和年龄层级
  • 平均增长率(黄色)- 新用户数为 25 到 50 的月份和年龄段
  • 增长不佳(红色)- 新用户数不超过 25 的月份和年龄段

如要使用表格可视化图表的修改菜单中的设置,将条件格式应用于表格,请完成以下步骤:

  1. 打开可视化图表栏上的修改菜单。
  2. 根据需要从 Plot 标签页中选择任何表格样式选项,包括使用 Table Theme 下拉菜单选择表格主题,或者通过选择或取消选择 Show Row Numbers 切换开关来选择是否显示行号。
  3. 绘制标签页上,选择单元格可视化选项以将其停用。必须停用单元格可视化功能,才能对表格值应用条件格式。
  4. 格式设置标签页上,选择启用条件格式切换开关以启用条件格式并访问条件格式设置。
    • 您也可以从格式标签页颜色部分的集合下拉菜单中选择调色板,并在字段中自定义行大小(以像素为单位),在自定义部分(位于条件格式设置上方)的标题字段中自定义行大小(以像素为单位)。
    • 在本例中,包括 Null 值作为零选项处于选中状态,使所有包含 null 的 null 值都为 0。
  5. 创建条件格式规则。您可以选择添加规则按钮,根据需要添加任意数量的条件格式规则。
    • 应用到下拉菜单中,选择要应用于规则的值。
  6. 格式下拉菜单中,选择要应用于规则的格式。 * 您可以选择保留默认的缩放格式。系统会根据您选择的调色板和值设置,以渐变方式突出显示值。请参阅“表格图表选项”文档页面的“条件格式”部分,详细了解刻度上的颜色编码。

    • 根据需要为每条规则指定背景颜色字体颜色字体样式的值。请务必考虑色彩对比度,以确保内容的无障碍性
    • 在此示例中,创建了三条规则:

      • 格式选项 如果值大于 49,并且已选择绿色的背景颜色选项。
      • 格式选项 如果值介于 24 和 50 之间,并且已选择黄色的背景颜色选项。
      • 格式选项 如果值小于 25,并且已选择红色的背景颜色选项。

最终的可视化图表会根据营销团队指定的条件显示每个年龄段列中的用户数:

  • 正增长(绿色)- 新用户数达到 50 人的月份和年龄层级
  • 平均增长率(黄色)- 新用户数为 25 到 50 的月份和年龄段
  • 增长不佳(红色)- 新用户数不超过 25 的月份和年龄段

在 LookML 中使用 html 参数进行条件格式设置

除了使用可视化修改菜单设置之外,您还可以直接将条件格式硬编码到字段的 LookML 中。这对于在针对给定字段的分析中保持一致的条件格式非常有用,因为它无需为各个报告重新配置可视化设置。

所需要素

  • 流体变量 - 流体变量会根据指定的 HTML 格式呈现字段的值。
  • html 参数 - 编码到字段的 html 参数中的 HTML 样式将在探索的数据表和可视化图表中呈现。
  • 表格可视化图表 - 条件格式将在可视化图表中向用户显示。

前提条件

html 参数中对条件格式进行硬编码需要满足以下要求:

示例

假设您的数据中有一个名为 status 的字段,用于提供每个订单的状态。status 可能的值包括:

  • “已取消”
  • “完成”
  • "pending"

若要向查看包含状态字段的报表的用户突出显示订单状态,您可以添加一种独特的背景颜色来突出显示每种状态。

如需将条件格式编码到 LookML 字段中,请执行以下操作:

dimension: status {
  type: string
  sql: ${TABLE}.status ;;
  html:
    {% dynamic if value == 'complete' %}
      <p style="color: black; background-color: lightgreen;">{{ value }}</p>
    {% elsif value == 'pending' %}
      <p style="color: black; background-color: orange;">{{ value }}</p>
    {% dynamic else %}
      <p style="color: white; background-color: red;">{{ value }}</p>
    {% dynamic endif %}
  ;;
  description: "The current status of an existing order."
}
  1. 开发模式中,前往您要添加条件格式的 LookML 字段。
    • 您可以从探索直接导航到字段的 LookML 定义。
  2. 向该字段添加 html 参数。在本例中,该字段为 status
  3. html 参数中,使用流动代码语法创建一个表达式,以便为字段的特定值设置条件。
  4. 在验证代码按预期运行后,保存、验证代码并将其推送到生产环境。

状态值会在包含该字段的任何 Looker 报告中以红色、绿色或橙色突出显示(具体取决于状态)。

直观的表格,显示按“已取消的订单”“已取消”“完成”以绿色、以橙色分组的“待处理订单”分组的订单数量。

其他图表也会显示背景颜色。例如,在某个查询中,如果查询按订单状态订单数进行分组,那么这个查询的柱形图会显示每个 Orders Status 值的编码背景颜色。

其他样式

您可以使用与上例相同的语法根据字段值添加图标或图片。以下示例为订单状态为“已取消”添加了红色“x”对勾标记图标,为订单状态为“完成”添加了绿色对勾标记图标,并为订单状态为“待处理”添加了时钟图标:

    dimension: status {
      type: string
      sql: ${TABLE}.status ;;
      html:
        {% dynamic if value == 'complete' %}
          <p><img src="https://findicons.com/files/icons/573/must_have/48/check.png" height=20 width=20>{{ rvalue }}</p>
        {% elsif value == 'pending' %}
          <p><img src="https://findicons.com/files/icons/1681/siena/128/clock_blue.png" height=20 width=20>{{ value }}</p>
        {% dynamic else %}
           <p><img src="https://findicons.com/files/icons/719/crystal_clear_actions/64/cancel.png" height=20 width=20>{{ value }}</p>
        {% dynamic endif %}
      ;;
      description: "The current status of an existing order."
    }

结果是在包含该字段的任何 Looker 报告中,状态值旁边会显示红色 x 图标、绿色对勾标记图标或时钟图标,具体取决于状态。

后续步骤

使用条件格式创建表格可视化图表后,您可以将其与他人共享: