【发布时间】:2019-11-09 18:55:23
【问题描述】:
这可能更像是一个数据处理问题,而不是 Altair 特有的问题。但是我有一些调查数据,其中受访者选择了一个年龄范围而不是他们的实际年龄,我正在尝试制作一个带有中线的直方图。带有平均线的 Altair 示例似乎都可以即时进行分箱,我不知道如何解决这个问题。
由于 x 轴是分类的(我认为),我不能只在两者之间添加一条线。也许我需要将组转换为数字?
这是我目前所拥有的
sample = ['35-39', '25-29', '30-34', '30-34', '25-29', '30-34', '22-24',
'50-54', '30-34', '40-44', '22-24', '25-29', '22-24', '50-54',
'22-24', '35-39', '25-29', '22-24', '22-24', '25-29', '25-29',
'30-34', '22-24', '40-44', '30-34', '25-29', '30-34', '25-29']
data = pd.DataFrame({'age': sample})
data
bars = alt.Chart(data).mark_bar().encode(
x=alt.X('age'),
y='count():Q'
)
mean = alt.Chart(data).mark_rule().encode(
x = 'mean(age)',
size=alt.value(5)
)
bars+mean
该代码生成此图表:
【问题讨论】:
标签: python data-visualization altair