Altair 堆积图未显示所有值

Posted

技术标签:

【中文标题】Altair 堆积图未显示所有值【英文标题】:Altair stacked-chart not showing all values 【发布时间】:2022-01-12 23:41:21 【问题描述】:

我觉得有些奇怪。 我有一个包含 3 列的数据框。我创建了一个堆叠条,但并非所有值都显示在堆叠条图形中。

这是我的代码:

#Create STACKED bar
data3 = data.groupby(['Bouwnummer', 'Omschrijving klachttype']).size().to_frame('Aantal klachten')

data3.reset_index(inplace=True)

st.dataframe(data = data3)

chart2 = alt.Chart(data3).mark_bar().encode(
x='Bouwnummer',
y='Aantal klachten',
color='Omschrijving klachttype'
).interactive()

# Show the chart2
st.altair_chart(chart2, use_container_width=True)

My dataframe shown with streamlit

Stacked bar in streamlit not showing all values of 'Bouwnummer 63'

为什么图中没有显示“Bouwnummer 63”的所有值?

Thnx 进阶

【问题讨论】:

【参考方案1】:

如果您希望条形图堆叠,您可以在y 编码的stack 参数中指定:

chart2 = alt.Chart(data3).mark_bar().encode(
  x='Bouwnummer',
  y=alt.Y('Aantal klachten', stack=True),
  color='Omschrijving klachttype'
).interactive()

或者,如果您确保x 编码是有序的而不是定量的,则默认情况下将堆叠条形:

chart2 = alt.Chart(data3).mark_bar().encode(
  x='Bouwnummer:O',
  y='Aantal klachten',
  color='Omschrijving klachttype'
).interactive()

【讨论】:

谢谢!那完成了工作!我认为“Bouwnummer”列是序数列。我猜不是。

以上是关于Altair 堆积图未显示所有值的主要内容,如果未能解决你的问题,请参考以下文章

Toad ER 图未显示表之间的关系和 pk、fk

Python Seaborn 联合图未在图表上显示相关系数和 p 值

使用百度 ECharts 在堆积条形图顶部显示数据值的总和

如何在 Altair 图表上只显示一个系列

Matplotlib 图未显示

K 表示图未正确显示