如何使用Matplotlib/Seaborn和Pandas DataFrame创建共享x轴的倒置条形图

5

我想创建一个类似于这个的图表。使用matplotlib/seaborn是否可以实现?如果可以,我可以使用哪些资源来学习如何样式化matplotlib/seaborn图表,并且如何使得两个图表对齐。

在此输入图片描述

1个回答

6

使用一个共同的x轴并将其中一个数据集转换为包含负值。

y = ['{} to {} years'.format(i, i+4) for i in range(0, 90, 4)]
d_1 = np.random.randint(0, 150, 23)
d_2 = -1 * d_1

然后绘制图表:
fig, ax = plt.subplots()
ax.bar(y, d_1)
ax.bar(y, d_2)

# Formatting x labels
plt.xticks(rotation=90)
plt.tight_layout()
# Use absolute value for y-ticks
ticks =  ax.get_yticks()
ax.set_yticklabels([int(abs(tick)) for tick in ticks])

plt.show()

enter image description here


有没有办法裁剪Y轴范围?比如您想隐藏零附近的间隔,并仅显示大于50的Y值? - a06e

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接