Используя набор данных радужной оболочки, мы можем создать простой граненый график:
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
. Как в этом случае я могу контролировать как основной сюжетный заголовок, так и заголовок фасета?