自定义顺序的折线图#

默认情况下,折线的路径(折线中点的顺序)由时间/顺序字段上的数据值确定。但是,可以将字段映射到 order 通道以实现自定义路径。

例如,为了显示汽油价格与人均平均行驶里程之间随时间变化的数据模式,我们使用 order 通道按时间字段(年份)对折线中的点进行排序。最早的年份(1956 年)是一个端点,最晚的年份(2010 年)是另一个端点。

这基于 Hannah Fairfield 的文章“Driving Shifts Into Reverse”。请参阅 https://archive.nytimes.com/www.nytimes.com/imagepages/2010/05/02/business/02metrics.html

import altair as alt
from vega_datasets import data

source = data.driving()

alt.Chart(source).mark_line(point=True).encode(
    x=alt.X("miles").scale(zero=False),
    y=alt.Y("gas").scale(zero=False),
    order="year",
    tooltip=["miles", "gas", "year"],
)
import altair as alt
from vega_datasets import data

source = data.driving()

alt.Chart(source).mark_line(point=True).encode(
    alt.X("miles", scale=alt.Scale(zero=False)),
    alt.Y("gas", scale=alt.Scale(zero=False)),
    order="year",
    tooltip=["miles", "gas", "year"],
)