使用bar()绘制柱形图或堆积柱形图
使用pyplot的bar()函数可以快速绘制柱形图或堆积柱形图。bar()函数的语法格式如下:
1.bar(x, heigt, width = 0.8, bottom = None, align = 'center',
2. data = None, tick_label = None, xerr = None, yerr = None,
3. error_kw = None, **kwargs)
bar()函数常用参数含义如下:
x:表示柱形的x坐标值。
heigh:表示柱形的高度。
width:表示柱形的宽度,默认为0.8。
bottom:表示柱形底部的y坐标值,默认为0。
align:表示柱形的对齐方式。
tick_label:表示柱形对应的刻度标签。
xerr,yerr:若未设为None,则需要为柱形图添加水平/垂直误差棒。
error_kw:表示误差棒的属性字典,字典的键对于errorbar()函数的关键字参数。
下面用bar()函数绘制柱形图,代码如下:
import numpy as np
import matplotlib.pyplot as plt #导入模块
x = np.arange(5) #设置x轴的坐标值
y1 = np.array([10, 8, 7, 11, 13]) #添加数据
fig = plt.figure() #创建类
ax = fig.add_subplot(111) #在画布fig上添加坐标系风格的绘图区域ax
bar_width = 0.3 #柱形的高度
ax.bar(x, y1, tick_label = ['a', 'b', 'c', 'd', 'e'], width = bar_width) #绘制柱形图
plt.show() #展示柱形图
运行结果如下:
还可以绘制多组柱形的柱形图。代码如下:
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(5)
y1 = np.array([10, 8, 7, 11, 13])
y2 = np.array([9, 6, 5, 10, 12]) #添加第二组数据
fig = plt.figure() #创建类
ax = fig.add_subplot() #给画布fig上添加坐标系风格的绘图区域ax
bar_width = 0.3
ax.bar(x, y1, tick_label = ['a', 'b', 'c', 'd', 'e'], width = bar_width)
ax.bar(x+bar_width, y2, width=bar_width) #加上第一组的宽度,并绘制柱形图
plt.show()
运行结果如下: