首页 > 解决方案 > Altair python - 如何为 for 中的图表对齐 x 轴(=0)

问题描述

我想对齐循环中生成的所有图表,但由于“y”标签,x 轴不会从同一垂直线开始。见下文:

在此处输入图像描述

for campo in [col for col in nomina.columns if col!= 'Fecha ingreso']:
    a = alt.Chart(nomina[[campo]]).mark_bar().encode(
        x='count(' + campo + '):Q',
        y=alt.Y('' + campo + ':N', sort='-x')
    )
    display(a.resolve_scale(x='shared'))

我想看到这样的:

在此处输入图像描述

标签: pythondata-analysisaltair

解决方案


已经想通了。我只需要在列表中添加图表,然后使用 alt.vconcat(mylistcharts)!

charts = []
for campo in [col for col in nomina.columns if col!= 'Fecha ingreso']:
    a = alt.Chart(nomina[[campo]]).mark_bar().encode(
        x='count(' + campo + '):Q',
        y=alt.Y('' + campo + ':N', sort='-x')
    )
    charts.append(a.resolve_scale(x='shared'))
alt.vconcat(*charts)

推荐阅读