注意看代码注释,解析全在注释中,其实自己运行一下,结合代码注释,效果最好。
1. 代码
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
n = 12
X = np.arange(n)
Y1 = (1 - X / float(n)) * np.random.uniform(0.5, 1.0, n)
Y2 = (1 - X / float(n)) * np.random.uniform(0.5, 1.0, n)
# 画柱状图,条形图的代码
plt.bar(X, +Y1, facecolor='#9999ff', edgecolor='white') # 指定x,y坐标以及柱状图的颜色
plt.bar(X, -Y2, facecolor='#ff9999', edgecolor='white')
for x, y in zip(X, Y1):
# ha: horizontal alignment
# va: vertical alignment
# 设置柱状图的一些说明,参数分别代表:横坐标,纵坐标,内容,水平的对齐方式,竖直的对齐方式。
plt.text(x + 0.4, y + 0.05, '%.2f' % y, ha='center', va='bottom')
for x, y in zip(X, Y2):
# ha: horizontal alignment
# va: vertical alignment
plt.text(x + 0.4, -y - 0.05, '%.2f' % y, ha='center', va='top')
plt.xlim(-.5, n)
plt.xticks(())
plt.ylim(-1.25, 1.25)
plt.yticks(())
plt.show()