如何在 Y 轴上绘制维度

此页面上显示的所有用户数据均仅供参考。

Looker 可视化会自动确定要在 y 轴上绘制的值 进行查询。例如,如果“探索”摘要卡以柱状图的形式显示订单数量排名前 10 的用户的用户姓氏用户年龄,则 x 轴上的 10 个维度值会自动串联起来,并以短划线 (–) 分隔。

如果您希望将用户年龄用户名字区分开来,使用户年龄而“用户名字”和“订单数”则会显示在 y 轴上,

以下两个解决方案概述了如何将维度(例如“用户年龄”)转换为度量方式,以便在 y 轴上显示该维度:

  • 使用表计算 - 直接从“探索”页面创建一次性解决方案,无需开发 LookML。
  • 创建衡量指标 - 开发 LookML,以便在日后的探索中重复使用表达式,而无需创建表格计算。

使用表计算

表格计算是将维度绘制在 y 轴上最快捷、最简单的方式。如果表达式中未涉及测量值,则通常将计算值绘制为一个维度。您可以通过在计算表达式中添加测量值,使表计算表现为测量。关键是确保该测量不会影响原始维度的值。

如需使用表格计算在 y 轴上绘制某个测量值,请执行以下步骤:

  1. 如果“探索”查询中没有测量,则添加任意测量(例如计数),然后 隐藏 直观呈现数据如果您的查询中已有您想在可视化中包含的测量,则无需将其隐藏。
  2. 接下来,创建表计算:
    • 对于数字字段,计算方法如下:

      ${mydimension} + (0 * ${mymeasure})
      通过乘以 以 0 作为测量单位。
    • 对于字符串字段,计算将涉及两个逻辑函数 if()is_null()
      if(is_null(${mymeasure}),${string_dimension},${string_dimension})
      此表达式会告知 Looker 始终显示字符串维度的值,以替换 测量值。
  3. 从可视化中隐藏原始维度(在本例中为“用户年龄”),因为表格计算(“年龄”测量值)现在在可视化中代表该维度的值。

如需区分可视化图表中的值(在此示例中,是年龄测量表计算结果和订单数量测量结果),您可以在一个图表中使用多种可视化图表类型

例如,您可以将“订单数量”值可视化为折线图,并按以下方式直观呈现“用户年龄”值 在 y 轴上绘制完“用户年龄”后,此列即可将其区分开来。

在 LookML 中创建测量

如果您日后打算再次在 y 轴上绘制特定维度,更可持续的做法是在 LookML 中创建 sum 测量值number 测量值,将您要绘制的维度转换为测量值。您可以从字段选择器中将该字段添加到查询中,而不必在“探索”中多次重新创建相同的表格计算。

该测量结果将如下所示:

    measure: measure_for_age { ## replace with a new name
        description: "Use this age field for displaying age on the y-axis"
        type: number ## or sum
        sql: ${age} ;; ## replace with your dimension
    }
向测量添加 description 有助于用户了解字段的预期用途。

在本例中,measure_for_agenumber 类型的测量,因为 number 类型的测量不执行任何实际聚合。这意味着,“年龄衡量指标”将显示与“用户年龄”相同的值,因为它是一种不会执行任何汇总的 number 类型衡量指标。

创建测量后,请在“探索”查询中同时添加维度和新测量。在此示例中,请添加“用户姓氏”和“用户年龄”维度,以及“订单数量”和“用户年龄衡量指标”测量项。最后,隐藏测量所依据的维度。

在“探索”可视化图表中隐藏“用户年龄”维度并应用自定义可视化图表设置后,“探索”可视化图表会在 y 轴上显示“用户年龄衡量指标”在 x 轴上显示“用户名字”,并以线条形式显示“订单数”值。