显示中文是matplotlib的使用学习过程中永远都绕不开的一个问题,通常可能我们接触到的第一个调试中文的办法
是font_manager,只要我们知道了字体的储存路径,font_manager使用起来就会很简单,虽然每次都要敲
FontProperties这样的超级长的关键词,就像我们完全能接受另一半的枕畔鼾声,甚至是另一半两天没有洗的臭脚。
可能是已经习惯了,平淡的日子就是如此,忽然有一天另一半开始有规律的锻炼身体,每一天都会按时洗脚的时候,
简单的日常也会变成我们生命中的惊喜。
后来我知道这样也可以改变中文的显示:
from matplotlib.pyplot import plt plt.rcParams['font.family'] = ['sans-serif'] plt.rcParams['font.sans-serif'] = ['SimHei']
甚至只要一行代码,轻松解决了当前matplotlib显示中文的问题,我们知道这个很好用,但是今天我们要起底一下,
这个rcParams为啥就这么好用呢?首选我们需要知道rcParams是什么,params是参数的意思,那么
rcParams中的rc是什么意思: run configuration 运行配置
事实上,pyplot使用rcParams来自定义图形的各种默认属性,称之为运行配置参数。通过更改参数可以修改默认的
属性,包括窗体大小、每英寸的点数、线条宽度、颜色、样式、坐标轴、坐标和网络属性、文本、字体等。
在matplotlib模块载入的时候会调用rc_params,并把得到的配置字典保存到rcParams变量中:
那么问题来了,运行配置参数,我们只用到了字体修改,是不是到了可以研究研究其他参数的时候了呢?
如此:
print(matplotlib.rc_params()) print(matplotlib.rcParamsDefault) print(matplotlib.rcParams)
这三行代码是or的关系,选择一个就可以的得到想要的默认配置参数
这么多的参数可以修改,修改方法:
plt.rcParams['font.family'] = ['sans-serif']
matplotlib.rcParams['font.family'] = ['sans-serif']
plt.rc('lines', linewidth=4, color='g')
这三行代码是or的关系,选择一个就可以的修改配置参数
如果你不想用之前修改的参数了,恢复到默认:
plt.rcdefaults()
一行代码,素面朝天
显示负号
matplotlib.rcParams['axes.unicode_minus']=False