Подписи столбцов по измеренной яркости
Горизонтальная столбчатая диаграмма с подписями. Измеренная яркость определяет, будет ли наложенный текст чёрным (black) или белым (white).
import altair as alt
from altair.datasets import data
source = data.barley()
base = alt.Chart(source).encode(
x=alt.X('sum(yield):Q').stack('zero'),
y=alt.Y('site:O').sort('-x'),
text=alt.Text('sum(yield):Q', format='.0f')
)
bars = base.mark_bar(
tooltip=alt.expr("luminance(scale('color', datum.sum_yield))")
).encode(
color='sum(yield):Q'
)
text = base.mark_text(
align='right',
dx=-3,
color=alt.expr("luminance(scale('color', datum.sum_yield)) > 0.5 ? 'black' : 'white'")
)
bars + text
import altair as alt
from altair.datasets import data
source = data.barley()
base = alt.Chart(source).encode(
x=alt.X('sum(yield):Q', stack='zero'),
y=alt.Y('site:O', sort='-x'),
text=alt.Text('sum(yield):Q', format='.0f')
)
bars = base.mark_bar(
tooltip=alt.expr("luminance(scale('color', datum.sum_yield))")
).encode(
color='sum(yield):Q'
)
text = base.mark_text(
align='right',
dx=-3,
color=alt.expr("luminance(scale('color', datum.sum_yield)) > 0.5 ? 'black' : 'white'")
)
bars + text
Подробнее в связанных разделах документации: