python3 matplotlib中文乱码解决

2018-11-20 新发现一个超简单的方法
在代码前面加上这句话就ok了

plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

MAC版本

参考连接:https://www.jianshu.com/p/1fc84794a2d1
看不懂的可以直接看以下实际的操作

1. 下载字体SimHei并完成安装

http://www.fontpalace.com/font-download/SimHei/

2. 复制字体到matplotlib字体目录下的ttf文件里

输入代码

import matplotlib
matplotlib.matplotlib_fname()

找到目录:
/Users/自己的用户名/anaconda/lib/python3.5/site-packages/matplotlib/mpl-data/fonts/ttf

3. 修改matplotlibrc文件内容

文件路径:
/Users/huangjixiao/anaconda/lib/python3.5/site-packages/matplotlib/mpl-data

(1) 将以下font.family和font.sans-serif前面的#去掉
(2) 在font.sans-serif:后面新增SimHei
(3) 同时将找到axes.unicode_minus,将True改为False,作用就是解决负号’-‘显示为方块的问题。

操作完成如下

font.family         : sans-serif
font.sans-serif     : SimHei, DejaVu Sans, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif

#axes.unicode_minus  : False

4. 删除tex.cache和fontList.json

在新的视窗(Shift+Command+G)搜寻以下路径
/Users/Alice/.matplotlib #请改成自己的Username

将tex.cache和fontList.json全删除

5. 重启运行JupyterNotebook,即可看到中文

Win版本

平台:windows,python3.5

步骤一:打开设置文件

import matplotlib

matplotlib.matplotlib_fname()

会显示matplotlibrc文件的地址

步骤二:修改matplotlibrc文件

将文件中的

#font.family: sans-serif

去掉注释,修改为
font.family: Microsoft YaHei

步骤三:重启jupyter notebook

可显示为中文

    原文作者:李明轩Matthew
    原文地址: https://www.jianshu.com/p/b5138e48fefa
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞