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