解决Ubuntu下matplotlib中文乱码问题-以添加宋体:simsun为例
- 先从simsun官网上下载宋体字体库 ;
- 查看matplotlib配置文件位置;
import matplotlib
print(matplotlib.matplotlib_fname())
输出位置:/APP/anaconda/anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc
- 改变位置到字体库 ;
$cd ~/APP/anaconda/anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf
- 在此可以用ls看到所有的matplotlib支持的字体,将下载的simsun.ttf也复制到这个地方(也就是说将下载的库,复制到matplotlib的库下) ;
- 删除当前用户matplotlib 的缓冲文件 ;
$cd ~/.cache/matplotlib
$rm -rf *.*
- 在python代码中添加下面语句就可以了 ;
import matplotlib.pyplot as plt
plt.rcParams[u'font.sans-serif'] = ['simsun‘] 用simhei 字体显示中文
plt.rcParams['axes.unicode_minus'] = False 这个用来正常显示负号
如上图所示可以显示中文了