Trail#
The trail
mark represents the data points stored in a field with a line connecting all of these points. Trail is similar to the line
mark but a trail can have variable widths determined by backing data. Unlike lines, trails do not support different interpolation methods and use fill
(not stroke
) for their color. Trail marks are useful if you want to draw lines with changing size to reflect the underlying data.
Trail Mark Properties#
A trail
mark definition can contain any standard mark properties
and the following special properties:
Click to show table
Property |
Type |
Description |
---|---|---|
orient |
The orientation of a non-stacked bar, tick, area, and line charts. The value is either horizontal (default) or vertical.
|
Examples#
Line Chart with Varying Size#
import altair as alt
from vega_datasets import data
source = data.stocks()
alt.Chart(source).mark_trail().encode(
x="date",
y="price",
color="symbol",
size="price",
)
Comet Chart Showing Changes Between Two States#
import altair as alt
from vega_datasets import data
alt.Chart(data.barley.url).transform_pivot(
"year",
value="yield",
groupby=["variety", "site"]
).transform_fold(
["1931", "1932"],
as_=["year", "yield"]
).transform_calculate(
calculate="datum['1932'] - datum['1931']",
as_="delta"
).mark_trail().encode(
alt.X("year:O").title(None),
alt.Y("variety:N").title("Variety"),
alt.Size("yield:Q")
.scale(range=[0, 12])
.legend(values=[20, 60])
.title("Barley Yield (bushels/acre)"),
alt.Color("delta:Q")
.scale(domainMid=0)
.title("Yield Delta (%)"),
alt.Tooltip(["year:O", "yield:Q"]),
alt.Column("site:N").title("Site"),
).configure_legend(
orient='bottom',
direction='horizontal'
).configure_view(
stroke=None
).properties(
title="Barley Yield comparison between 1932 and 1931"
)