此内容将带领大家了解matplotlib.pyplot的绘图函数,使用这些函数绘制折线图和柱形图,并提供相应的源代码示例。
1、安装matplotlib
在安装matplotlib前,需要先确保计算机中已经配置好Python开发环境。matplotlib的安装可以使用pip命令直接安装。
1丨pip install matplotlib
2、导入模块
在我们开始前,让我们先导入matplotlib.pyplot和numpy模块,分别将这两个模块重命名为plt和np,这才能使用matplotlib库绘制一个简单的图表。
1丨import matplotlib.pyplot as plt
2丨import numpy as np
3、使用 plot() 绘制折线图
使用pyplot的 plot() 函数可以快速绘制折线图。plot() 函数的语法格式如下所示:
1丨matplotlib.pyplot.plot(*args,scalex=True,scaley=True,data=None,**kwargs)
- x :表示 x 轴的数据。
- y :表示 y 轴的数据。
plot() 函数会返回一个包含Line2D类的对象(代表线条)的列表。
使用pyplot的plot() 函数还可以绘制有多个线条的折线图
(1)、多次调用plot() 函数来绘制多个线条的折线图,示例代码如下:
1丨plt.plot(x1, y1)
2丨plt.plot(x2, y2)
(2)、调用plot() 函数时传入一个二维码组来绘制具有多个线条的折线图。例如将二维数组 arr 的第一行数据作为 x 轴的数据、其他行数据全部作为 y 轴的数据,代码如下。
1丨arr = np.array([[1,2,3], [4,5,6], [7,8,9], [10,11,12]])
2丨plt.plot(arr[0], arr[1:])
(3)、调用plot() 函数时传入多组数据来绘制具有多个线条的折线图,示例代码如下:
1丨plt.plot(x1, y1, x2, y2)
下面有简单的一个代码实例如下 :
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(1,10)
y = np.array([1,3,2,4,6,5,8,7])
plt.plot(x)
plt.plot(y)
plt.show()
4、使用bar() 绘制柱形图
使用pyplot的bar() 函数可以快速绘制柱形图。bar() 函数的语法格式如下所示:
matplotlib.pyplot.bar(x, height, width=0.8, bottom=None, *, align='center', data=None, **kwargs)
该函数常用的参数的含义如下。
- x :表示柱形的 x 坐标值。
- height:表示柱形的高度。
- width:表示柱形的宽度,默认值为0.8。
- bottom:表示柱形的对齐方式,有 ‘center’ 和 ‘edge’ 两个取值,其中 ‘center’ 表示将柱形与刻度线居中对齐;‘edge’ 表示将柱形的左边与刻度线对齐。
- tick_label:表示柱形对应的刻度标签。
bar() 函数会返回一个 BarContainer 类的对象。BarContainer 类的对象是一个包含矩形或误差棒的容器,它亦可以视为一个元组,可以遍历获取每个矩形条或误差棒。此外,BarContainer 类的对象也可以访问 patches 或 errorbar属性,从而获取图表中所有的矩形条或误差棒。
例如,使用bar() 函数绘制柱形图,代码如下。
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(10)
y1 = np.array([14, 6, 5, 12, 15, 20, 19, 18, 17, 16])
#柱形的宽度
bar_width = 0.4
#绘制柱形图
plt.bar(x, y1, tick_label=['s', 'f', 'g', 'h', 'j', 'k', 'l', 'o', 'p', 't'], width=bar_width)
plt.show()