Python | matplotlib 参数设置(解决中文、负号显示问题)
一、获取中文字体
1.1 下载字体:
SimHei.ttf
\qquad 云盘链接:https://pan.baidu.com/s/1VFEnQ1vtaThgtgUjNyq81A
\qquad
提取码:vzbs
SimSun.ttf
\qquad 云盘链接: https://pan.baidu.com/s/1l-RfnBRvbLBvHyHMri250A
\qquad
提取码:kc20
1.2 获取 matplotlib 安装路径
import matplotlib
print(matplotlib.__file__)
1.3 为 matplotlib 新增字体
\qquad
在SimHei.ttf
存储的路径下,将SimHei.ttf
移动到matplotlib/mpl-data/fonts/ttf/
目录下:
mv SimHei.ttf /home/dong/anaconda3/lib/python3.8/site-packages/matplotlib/mpl-data/fonts/ttf/
1.4 删除 matplotlib 缓存
cd ~/.cache/matplotlib
rm -rf *.*
二、方法一:修改代码
2.1 修改 rcParams 属性
plt.rcParams['font.family'] = ['SimHei'] # 解决中文显示异常的问题
plt.rcParams['axes.unicode_minus'] = False # 解决负号显示异常的问题
2.2 通过 rc() 方法修改
plt.rc('font',family='SimHei',size='15')
plt.rc('axes',unicode_minus='False')
三、方法二:修改配置文件
3.1 找到默认配置文件的位置
import matplotlib
matplotlib.matplotlib_fname()
3.2 修改默认配置文件
- 找到
font.family:
,去除注释#
。
- 找到
font.sans-serif
,添加SimHei
,去除注释#
。
- 找到
axes.unicode_minus
,将True
改为False
,去除注释#
。