此页面上显示的所有用户数据均仅供参考。
Looker 可视化会自动确定要在 y 轴上绘制的值 进行查询。例如,如果“探索”摘要卡以柱状图的形式显示订单数量排名前 10 的用户的用户姓氏和用户年龄,则 x 轴上的 10 个维度值会自动串联起来,并以短划线 (–) 分隔。
如果您希望将用户年龄和用户名字区分开来,使用户年龄为 而“用户名字”和“订单数”则会显示在 y 轴上,
以下两个解决方案概述了如何将维度(例如“用户年龄”)转换为度量方式,以便在 y 轴上显示该维度:
使用表计算
表格计算是将维度绘制在 y 轴上最快捷、最简单的方式。如果表达式中未涉及测量值,则通常将计算值绘制为一个维度。您可以通过在计算表达式中添加测量值,使表计算表现为测量。关键是确保该测量不会影响原始维度的值。
如需使用表格计算在 y 轴上绘制某个测量值,请执行以下步骤:
- 如果“探索”查询中没有测量,则添加任意测量(例如计数),然后 隐藏 直观呈现数据如果您的查询中已有您想在可视化中包含的测量,则无需将其隐藏。
-
接下来,创建表计算:
- 对于数字字段,计算方法如下:
通过乘以 以 0 作为测量单位。${mydimension} + (0 * ${mymeasure})
-
对于字符串字段,计算将涉及两个逻辑函数
if()
和is_null()
: 此表达式会告知 Looker 始终显示字符串维度的值,以替换 测量值。if(is_null(${mymeasure}),${string_dimension},${string_dimension})
- 对于数字字段,计算方法如下:
- 从可视化中隐藏原始维度(在本例中为“用户年龄”),因为表格计算(“年龄”测量值)现在在可视化中代表该维度的值。
如需区分可视化图表中的值(在此示例中,是年龄测量表计算结果和订单数量测量结果),您可以在一个图表中使用多种可视化图表类型。
例如,您可以将“订单数量”值可视化为折线图,并按以下方式直观呈现“用户年龄”值 在 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_age
是 number
类型的测量,因为 number
类型的测量不执行任何实际聚合。这意味着,“年龄衡量指标”将显示与“用户年龄”相同的值,因为它是一种不会执行任何汇总的 number
类型衡量指标。
创建测量后,请在“探索”查询中同时添加维度和新测量。在此示例中,请添加“用户姓氏”和“用户年龄”维度,以及“订单数量”和“用户年龄衡量指标”测量项。最后,隐藏测量所依据的维度。
在“探索”可视化图表中隐藏“用户年龄”维度并应用自定义可视化图表设置后,“探索”可视化图表会在 y 轴上显示“用户年龄衡量指标”在 x 轴上显示“用户名字”,并以线条形式显示“订单数”值。