如何使用Python中的模式和颜色对条形图进行编码?

时间:2016-10-05 08:52:54

标签: python matplotlib bar-chart plt

以下代码打印带有四种颜色的条形图:

import matplotlib.pyplot as plt

barlist=plt.bar([1,2,3,4], [1,2,3,4])
barlist[0].set_color('r')
barlist[1].set_color('g')
barlist[2].set_color('y')
plt.show()

enter image description here

问题在于,当以黑白打印时,它们看起来非常相似。因此,我的目的是制作一个有点像这样的图表:

enter image description here

看起来就像上面一样(原谅邋illustration的插图),但我们的想法是让每个条在灰度中看起来都不同。

有什么方法可以在Python中实现吗?

1 个答案:

答案 0 :(得分:3)

您可以在条形图中设置不同的图案来编辑影线参数:

import matplotlib.pyplot as plt

barlist = plt.bar([1,2,3,4], [1,2,3,4], color=['r','b','y','g'])

barlist[0].set_hatch('//')
barlist[1].set_hatch('.')
barlist[2].set_hatch('*')
barlist[3].set_hatch('o')
plt.show()

Sample bars figure