本节书摘来异步社区《Python数据可视化编程实战》一书中的第1章,第1.8节,作者:【爱尔兰】Igor Milovanović,更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.8 在代码中配置matplotlib参数
Python数据可视化编程实战
matplotlib库提供了强大的绘图功能,是本书用的最多的Python库。在其配置文件即.rc文件中,已经为大部分属性设定了默认值。本节会介绍如何通过应用程序代码修改matplotlib的相关属性值。
1.8.1 准备工作
如前所述,matplotlib配置信息是从配置文件读取的。在配置文件中可以为matplotlib的几乎所有的属性指定永久有效的默认值。
1.8.2 操作步骤
在代码执行过程中,有两种方式更改运行参数:使用参数字典(rcParams)或调用matplotlib.rc()命令。第一种方式中,可以通过rcParams字典访问并修改所有已经加载的配置项;第二种方式中,可以通过向matlotlib.rc()传入属性的关键字元组来修改配置项。
如果需要重置动态修改后的配置参数,可以调用matplotlib.rcdefaults()将配置重置为标准设置。
下面两段代码演示了之前介绍的功能。
使用matplotlib.rcParams的例子。
import matplotlib as mp
mpl.rcParams['lines.linewidth'] = 2
mpl.rcParams['lines.color'] = 'r'
使用matplotlib.rc()函数调用的例子。
import matplotlib as mpl
mpl.rc('lines', linewidth=2, color='r')
上面两个例子具有相同的语义。第二个例子中,我们设定后续的所有图形使用的线条宽度为2个点。第一个例子中的最后一条语句表明,语句之后的所有线条的颜色均为红色,除非用本地设置覆盖它,请看下面的例子。
import matplotlib.pyplot as plt
import numpy as np
t = np.arange(0.0, 1.0, 0.01)
s = np.sin(2 * np.pi * t)
# make line red
plt.rcParams['lines.color'] = 'r'
plt.plot(t,s)
c = np.cos(2 * np.pi * t)
# make line thick
plt.rcParams['lines.linewidth'] = '3'
plt.plot(t,c)
plt.show()
1.8.3 代码解析
首先,为了绘制正弦、余弦曲线,需要导入matplotlib.pyplot和NumPy模块。在绘制第一个图像之前,通过plt.rcParams['lines.color']= 'r'语句显式地设置线条颜色为红色;接下来,对于第二个图像(余弦曲线),通过语句plt.rcParams['lines.
linewidth'] = '3'
显式地设定线宽为3个点。
如果需要重置设置,需要调用matplotlib.rcdefaults()方法。