这篇教程两行代码解决Jupyter Notebook中文不能显示的问题写得很实用,希望能帮到您。 1、为什么不显示中文:Matplotlib默认不支持中文字符,因为默认的英文字体无法显示汉字。 图片显示情况:
2、解决方案:在代码块加上这两行代码: plt.rcParams[‘font.sans-serif']=[‘SimHei'] #用来正常显示中文标签plt.rcParams[‘axes.unicode_minus']=False #用来正常显示负号 
图片显示情况:
补充jupyter-notebook 中matplotlib不支持中文的问题(Linux) 前言问题就不截图了, jupyter-notebook中,使用plt画出的图像,中文都是小方格(乱码) 解决方法如下1. Linux安装字体把Windows的字体C:/Windows/Fonts复制到Linux系统的存放字体路径/usr/share/fonts下, 如图: 
cd到/usr/share/fonts/Fonts,也就是拷贝来的文件夹, 建立字体索引信息,更新字体缓存,让字体生效, 运行命令: mkfontscale && mkfontdir && fc-cache -fv && source /etc/profile && fc-list |wc -l 查看字体fc-list :lang=zh 
2. 添加配置这里有很多版本,比如: import matplotlibmatplotlib.use('qt4agg')#指定默认字体matplotlib.rcParams['font.sans-serif'] = ['SimHei']matplotlib.rcParams['font.family']='sans-serif' #解决负号'-'显示为方块的问题matplotlib.rcParams['axes.unicode_minus'] = False 我的设置是: from pylab import mplmpl.rcParams['font.sans-serif'] = ['STSong']mpl.rcParams['axes.unicode_minus'] = False 如图,可以正常显示中文了 
3. 如果还不行,清除缓存如果添加了第二部的配置,但还是显示中文乱码, 那么有可能是缓存的问题, 执行rm -r ~/.cache/matplotlib 
以上为个人经验,希望能给大家一个参考,也希望大家多多支持51zixue.net。如有错误或未考虑完全的地方,望不吝赐教。 python基础详解之if循环语句 如何用python绘制雷达图 |