mirror of
https://github.com/aykhans/AzSuicideDataVisualization.git
synced 2025-04-22 02:23:48 +00:00
41 lines
921 B
Python
41 lines
921 B
Python
"""
|
|
Text over a Heatmap
|
|
-------------------
|
|
|
|
An example of a layered chart of text over a heatmap using the cars dataset.
|
|
"""
|
|
# category: other charts
|
|
import altair as alt
|
|
from vega_datasets import data
|
|
|
|
source = data.cars()
|
|
|
|
# Configure common options
|
|
base = alt.Chart(source).transform_aggregate(
|
|
num_cars='count()',
|
|
groupby=['Origin', 'Cylinders']
|
|
).encode(
|
|
alt.X('Cylinders:O', scale=alt.Scale(paddingInner=0)),
|
|
alt.Y('Origin:O', scale=alt.Scale(paddingInner=0)),
|
|
)
|
|
|
|
# Configure heatmap
|
|
heatmap = base.mark_rect().encode(
|
|
color=alt.Color('num_cars:Q',
|
|
scale=alt.Scale(scheme='viridis'),
|
|
legend=alt.Legend(direction='horizontal')
|
|
)
|
|
)
|
|
|
|
# Configure text
|
|
text = base.mark_text(baseline='middle').encode(
|
|
text='num_cars:Q',
|
|
color=alt.condition(
|
|
alt.datum.num_cars > 100,
|
|
alt.value('black'),
|
|
alt.value('white')
|
|
)
|
|
)
|
|
|
|
# Draw the chart
|
|
heatmap + text |