我正在寻找有关python matplotlib库中多条形图的解决方案。我想创建一个脚本,它将采用x值对应于每个月10天的数据集,持续8个月(24次10天,分为每个月的3个部分:1,2和3)和出生率男性和女性。我希望看到的是一个条形图,每个月每十天就有男性和女性出生率。问题是我不知道如何制作双x轴标签:第一行每10天:1,2,3及以下将是月份的名称,就像这样:
| * @ * males
| *@ *@ @ @ females
| *@ *@ *@
-------------- (...)
1 2 3
March
直到现在我所得到的是:
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(1,25)
y_males= abs(np.random.normal(100,20,len(x)))
y_females = abs(np.random.normal(50,20,len(x)))
w = 0.3
opacity = 0.8
ax = plt.subplot(111)
ax.bar(x-w,y_males,w,[enter image description here][1]
alpha=opacity,
color='b', align='center',
label='Female')
ax.bar(x,y_females,w,
alpha=opacity,
color='g',align='center',
label='Male')
plt.xticks(x-w/2, ('1', '2' , '3','1', '2' , '3','1', '2' , '3','1', '2' , '3','1', '2' , '3','1', '2' , '3','1', '2' , '3','1', '2' , '3',))
plt.tight_layout()
plt.legend()
ax.autoscale(tight=True)
plt.show()
非常感谢你的帮助! 最好, 的Dawid