折线图指南

我们谈论折线图时在谈论什么:时间序列、趋势线、警报等。

折线图适用于绘制按顺序捕获的数据,无论该顺序是时间流逝,还是流程或流动的步骤。这些图表通常用于绘制时间序列(也称为运行图):一组由线条连接的标记,其中 x 轴显示时间流逝,y 轴绘制每个时刻的指标值。

如何创建折线图

让我们看看 Metabase 附带的示例数据库中的Orders表。从主导航栏,单击+ New > Question,这将带您进入 Metabase 的查询生成器。选择Raw Data > Sample Database,然后选择Orders表。单击Visualize,然后单击右下角的Visualization button以打开Visualization sidebar

The orders table

让我们从如何不创建折线图开始。如果您选择line chart,Metabase 将为您显示一个空图表。

An empty line chart, before setting the x and y axes.

Metabase 还不能读懂人心(但未来可能可以),所以它不知道Orders表中的哪些列应该用于 x 轴和 y 轴。要创建折线图,您需要选择一个指标让 Metabase 随时间绘制。例如,您可以通过将 x 轴设置为created_at并将 y 轴设置为total来显示随时间变化的订单总额。Metabase 将自动绘制折线图。

A noisy line chart after setting the x and y axes, without first summarizing the data.

这在技术上是一个折线图,但它看起来更像一只受惊的蜂鸟的心电图,而且这还是在 Metabase 截断了显示的结果之后。(如果您将鼠标悬停在右上角的灰色警告三角形上,您会看到 Metabase 只绘制了 2,000 行。)

为了使图表更易读,我们可以对数据进行汇总,这样折线图上的每个点都是行的聚合—“存储桶”记录。(在可视化图表中,例如图钉地图散点图,例如,显示按价格和评分绘制的每个产品,通常更常见的是绘制未聚合的行。)

作为聚合指标的一个例子,让我们按月绘制订单总额的总和。单击绿色的Summarize button以打开Summarize sidebar。Metabase 默认计数记录,但我们不关心订单数量,所以我们将单击Count并将其更改为Sum of,然后从Order中选择Total列。

接下来,我们将按月对订单总额进行分组。在Group by部分,在Order下,将鼠标悬停在Created At字段上,然后单击+按钮添加分组。

Hover over Created At and click on the plus button to add a grouping by month. You can select other time intervals (day, week, year) by clicking on by month.

添加分组后,Metabase 会立即更新图表。

The sum of order totals by month.

这张图更容易阅读。当然,我们可以随时选择折线图的一部分来过滤该时间段的结果,并深入查看那些单独的、未聚合的记录。

Zooming in and drilling through a line chart to view individual records.

自定义您的折线图

要自定义折线图,您可以单击左下角的Settings按钮(齿轮图标)。这里有太多设置无法一一介绍,以免让您感到厌烦,所以我们只为您介绍一些亮点。

数据选项卡:折线图、面积图还是条形图?

Data tab中,您可以通过单击三点按钮来选择线条选项,甚至更改图表类型。

到目前为止,我们一直严格讨论折线图,但条形图和面积图是类似的,并且根据您想传达的内容,有充分的理由选择它们而不是折线图。

An area chart.

面积图通常用于比较随时间变化的数值。如果您随时间绘制的数值不多,可以考虑使用条形图。如果您想查看随时间变化的数值构成,请使用堆叠条形图。

您还可以将折线图和面积图组合在组合图中,以可视化不同的聚合,例如下面所示的订单总额的计数和总和。我们在此处更详细地讨论了组合图。

The count of orders as a blue line, set against the green area chart plotting the sum of order totals.

显示选项卡:趋势线和目标线

Display tab允许您更改线条颜色和样式,处理缺失值等。如果您计划将图表嵌入到您的应用程序中,可以查看我们的白标签选项以获得更多自定义。

您可以从时间序列图的显示设置中添加趋势线。如果您从Summarize > Group by中选择了确切的一个时间字段,您将看到切换选项。在下面的示例中,我们选择了分组字段“Created At: Month”。

Line chart with goal and trend lines.

您还可以添加目标线,在目标值处绘制一条水平线。目标线与警报配对尤其有用。例如,如果您正在监控销售额,并且只想在某个指标低于某个阈值时收到通知,您可以添加一条目标线来指定该阈值,并在该线低于阈值时发送电子邮件或 Slack 消息。

轴选项卡:刻度和轴标签

在这里,您可以调整 x 轴和 y 轴的刻度。对于 x 轴,您可以选择时间序列或序数刻度。时间序列将限制显示的数值数量,而序数刻度将沿 x 轴列出系列中的每个数值。如果您绘制的是序列中的步骤,请使用序数刻度。

对于 y 轴,您可以选择线性(默认)、幂或对数刻度。对数刻度非常适合显示随时间变化的速率,尤其是在数据呈指数增长或衰减时。

The log scale view of the sum of order totals by month shows us that the growth in totals has flattened out over time.

您可以忽略幂刻度,因为没有人真正使用它们。

折线图提示

Metabase 会为您处理许多最佳数据可视化实践,但以下是在创建折线图时需要牢记的一些技巧。

将折线图与趋势图配对

创建仪表板时,您可以将折线图与趋势图配对,以便轻松读取最新值。

Pair a line chart with a trend chart to show the latest number.

将鼠标悬停在标签上可突出显示线条

您可以将鼠标悬停在图例中某个系列名称上,以突出显示该系列并使其他系列变暗。您还可以单击某个系列来隐藏(或取消隐藏)它。

Hovering over labels in the legend hill highlight the corresponding line.

对于时间序列,过滤掉仍在进行中的时间段

处理时间序列时,通过添加过滤器排除当前正在进行的日期、星期或月份,您的图表会看起来更美观;否则,您的图表由于不完整或部分时间段而在右侧显示大幅下降。只需取消选中Include this day或星期、月份或您正在处理的任何时间刻度。

Unless you really need the most recent (and potentially incomplete) period of time, make sure the Include this... option isn

延伸阅读

这有帮助吗?

感谢您的反馈!
订阅新闻通讯
Metabase 的更新和新闻
© . This site is unofficial and not affiliated with Metabase, Inc.