牵牛星条形图如何显示缺少的类别

2024-06-28 11:11:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我有下面这个图表,看起来很棒。 但是,由于数据帧中没有可用数据,因此省略了X轴上的类别“2”

在牵牛星,什么是最好的方法? 我希望“2”提前期显示为空白/列(与列宽度相同)

enter image description here

import altair as alt
alt.Chart(data).mark_bar().encode(
    x='leadtime:O',
    y='value',
    color='category'
)

资料

leadtime    category    value
1   cat1    1
1   cat2    1
1   cat3    1
1   cat4    2
1   cat5    2
1   cat6    0.5
1   cat7    3
3   cat1    2
3   cat2    3
3   cat3    2
3   cat4    4
3   cat5    5
3   cat6    0.5
3   cat7    6
4   cat1    2
4   cat2    4
4   cat3    2
4   cat4    7
4   cat5    8
4   cat6    8
4   cat7    3

Tags: 数据value图表alt类别省略categorycat1
1条回答
网友
1楼 · 发布于 2024-06-28 11:11:47

您可以通过两种方式执行此操作,或者使用y中的impute transform

alt.Chart(data).mark_bar().encode(
    x='leadtime:O',
    color='category',
    y=alt.Y('value',
      impute=alt.ImputeParams(
        value=0,
        keyvals=[1, 2, 3, 4]
      )
    ),
)

enter image description here

或在x中设置显式scale domain

alt.Chart(data).mark_bar().encode(
    x=alt.X('leadtime:O', scale=alt.Scale(domain=[1, 2, 3, 4])),
    y='value',
    color='category',
)

enter image description here

相关问题 更多 >