【问题标题】:Altair stacked-chart not showing all valuesAltair 堆积图未显示所有值
【发布时间】: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 进阶

【问题讨论】:

    标签: python pandas altair stacked-chart streamlit


    【解决方案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”列是序数列。我猜不是。
    猜你喜欢
    • 2018-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-18
    • 2021-12-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多