网上教程很多,但是折腾了好久才弄好。特此记录一下。
- 查看matplotlib配置文件位置
>>> import matplotlib
>>> print matplotlib.matplotlib_fname()
/usr/local/lib/python2.7/site-packages/matplotlib/mpl-data/matplotlibrc
PS:因为之前安装了两个matplotlib的库。所以这里会有问题。
- 一个使用sudo apt-get install python-matplotlib安装,在root用户下。
- 一个使用pip install matplotlib普通用户安装。
删除root目录下的matplotlib,使用命令sudo apt-get remove python-matplotlib后,才能显示正常的matplotlib配置文件。
- 永久解决方法
- 首先将windwos中fonts目录下的simhei.ttf拷贝到上一步获取到的路径中
/usr/local/lib/python2.7/site-packages/matplotlib/mpl-data/fonts/ttf
或者
/usr/share/matplotlib/mpl-data/fonts/ttf
-
修改第一步的配置文件/usr/local/lib/python2.7/site-packages/matplotlib/mpl-data/matplotlibrc
# 添加以下内容 font.family : sans-serif font.sans-serif : SimHei axes.unicode_minus : False #解决负号'-'显示为方块的问题
-
删除~/.cache/matplotlib的缓冲
-
重新加载字体
from matplotlib.font_manager import _rebuild _rebuild()
-
验证
新建python文件,输入以下内容
# -*- coding:utf-8 -*-
from matplotlib import pyplot as plt
plt.title(u'显示中文')
plt.show()
若出现如下图的中文字符,则说明更改成功。
最后附上simhei.ttf的链接
simhei.ttf