在 Altair LayerChart 中指定绘图标题和构面标题
Specify plot title and facet title in Altair LayerChart
使用鸢尾花数据集,我们可以创建一个简单的分面图:
import altair as alt
from vega_datasets import data
iris = data.iris.url
alt.Chart(iris, title='Main Title').mark_bar().encode(
x='petalWidth:Q',
y='count(petalLength):Q',
color='species:N',
facet=alt.Facet('species:N', title=None)
)
这里我可以分别控制主剧情标题和分面标题
现在假设我想创建相同的图表,但要为每个条添加文本注释:
base = alt.Chart(iris).encode(
x='petalWidth:Q',
y='count(petalLength):Q',
color='species:N',
text='count(petalLength):Q'
)
c = base.mark_bar()
t = base.mark_text(dy=-6)
alt.layer(c, t).facet('species:N', title=None).properties(title='Main Title')
这一次,species
标题位于分面上方。在这种情况下,如何控制主情节标题和分面标题?
传递给 facet
方法的关键字参数被传递给创建的 alt.FacetChart
图表。
您想要传递给分面编码的任何关键字参数都可以通过 alt.Facet()
包装器传递,类似于其他编码。
例如:
alt.layer(c, t).facet(
facet=alt.Facet('species:N', title=None),
title='Main Title'
)
使用鸢尾花数据集,我们可以创建一个简单的分面图:
import altair as alt
from vega_datasets import data
iris = data.iris.url
alt.Chart(iris, title='Main Title').mark_bar().encode(
x='petalWidth:Q',
y='count(petalLength):Q',
color='species:N',
facet=alt.Facet('species:N', title=None)
)
这里我可以分别控制主剧情标题和分面标题
现在假设我想创建相同的图表,但要为每个条添加文本注释:
base = alt.Chart(iris).encode(
x='petalWidth:Q',
y='count(petalLength):Q',
color='species:N',
text='count(petalLength):Q'
)
c = base.mark_bar()
t = base.mark_text(dy=-6)
alt.layer(c, t).facet('species:N', title=None).properties(title='Main Title')
这一次,species
标题位于分面上方。在这种情况下,如何控制主情节标题和分面标题?
传递给 facet
方法的关键字参数被传递给创建的 alt.FacetChart
图表。
您想要传递给分面编码的任何关键字参数都可以通过 alt.Facet()
包装器传递,类似于其他编码。
例如:
alt.layer(c, t).facet(
facet=alt.Facet('species:N', title=None),
title='Main Title'
)