我想用matplotlib做一个双柱状图。这是我的代码:
width = 0.55
ax2.set_xlim(0,len(partiteIndici)+width)
plt.ylim([0,100])
rects1 = ax2.bar(partiteIndici, distanze, width,align='center', color='blue', label='4-3-3 Modello')
rects2 = ax2.bar(partiteIndici, distanze2, width,align='center', color='red', label='Squadra X')
plt.xticks(index + width, partite)
plt.legend()
plt.tight_layout()
plt.show()但这是我所拥有的:

我希望有蓝色条旁边的红色条,而不是重叠。我怎么才能让它正常工作呢?
为什么我把x条上的标记移到了条上?
发布于 2016-05-16 01:41:56
我在您的代码中发现了两个错误:首先,您得到了重叠的条形图,因为您使用相同的x值绘制它们;您需要按照this example手动移动一个曲线图以使其按您的方式工作。假设partiteIndici是一个数组,将rects2行更改为
rects2 = ax2.bar(partiteIndici + width, distanze2, width,align='center', color='red', label='Squadra X')这会让你的一个地块发生变化。根据刻度和标签,您必须将它们放在与条相同的x点上;将xticks行中的index更改为partiteIndici
plt.xticks(partiteIndici + width, partite)https://stackoverflow.com/questions/37240376
复制相似问题