这可能是Altair特定的数据处理问题。但是我有一些调查数据,在这些数据中,受访者选择了年龄范围而不是他们的实际年龄,并且我正在尝试使用中线绘制直方图。带有中性线的Altair示例似乎都在进行分类,我不确定如何解决。
由于x轴是分类的(我认为),所以我不能只在两者之间添加一条线。也许我需要将组转换为数字形式?
这是我到目前为止所拥有的
sample = ['35-39','25-29','30-34','22-24','50-54','40-44','35-39','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
该代码将生成以下图表: