matplotlib 画图中文乱码
时间: 2023-07-12 13:44:25 浏览: 112
matplotlib 画图中文乱码通常是因为matplotlib默认不支持中文显示,需要手动设置字体。可以使用以下两种方法解决中文乱码问题:
1. 修改matplotlibrc配置文件
在Matplotlib安装路径下的mpl-data目录中,找到matplotlibrc文件,使用文本编辑器打开文件,并找到以下两行:
```
#font.family : sans-serif
#font.sans-serif : Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
```
将其改为以下内容:
```
font.family : Microsoft YaHei, SimHei, DejaVu Sans, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
font.sans-serif : Microsoft YaHei, SimHei, DejaVu Sans, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
```
其中Microsoft YaHei和SimHei是常用的中文字体,如果没有安装可以使用其他中文字体。
2. 临时设置字体
在代码中使用rcParams设置字体,例如:
```
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['Microsoft YaHei']
plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号
```
其中,font.sans-serif设置为中文字体,axes.unicode_minus设置为False用来正常显示负号。
以上两种方法都可以解决matplotlib画图中文乱码问题。
阅读全文