两行代码解决Jupyter Notebook中文不能显示的问题


Posted in Python onApril 24, 2021

1、为什么不显示中文:

Matplotlib默认不支持中文字符,因为默认的英文字体无法显示汉字。

图片显示情况:

两行代码解决Jupyter Notebook中文不能显示的问题

2、解决方案:

在代码块加上这两行代码:

plt.rcParams[‘font.sans-serif']=[‘SimHei'] #用来正常显示中文标签
plt.rcParams[‘axes.unicode_minus']=False #用来正常显示负号

两行代码解决Jupyter Notebook中文不能显示的问题

图片显示情况:

两行代码解决Jupyter Notebook中文不能显示的问题

补充jupyter-notebook 中matplotlib不支持中文的问题(Linux)

前言

问题就不截图了, jupyter-notebook中,使用plt画出的图像,中文都是小方格(乱码)

解决方法如下

1. Linux安装字体

把Windows的字体C:/Windows/Fonts复制到Linux系统的存放字体路径/usr/share/fonts下, 如图:

两行代码解决Jupyter Notebook中文不能显示的问题

cd到/usr/share/fonts/Fonts,也就是拷贝来的文件夹, 建立字体索引信息,更新字体缓存,让字体生效, 运行命令:

mkfontscale && mkfontdir && fc-cache -fv && source /etc/profile && fc-list |wc -l

查看字体fc-list :lang=zh

两行代码解决Jupyter Notebook中文不能显示的问题

2. 添加配置

这里有很多版本,比如:

import matplotlib
matplotlib.use('qt4agg')
#指定默认字体
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
matplotlib.rcParams['font.family']='sans-serif' #解决负号'-'显示为方块的问题
matplotlib.rcParams['axes.unicode_minus'] = False

我的设置是:

from pylab import mpl
mpl.rcParams['font.sans-serif'] = ['STSong']
mpl.rcParams['axes.unicode_minus'] = False

如图,可以正常显示中文了

两行代码解决Jupyter Notebook中文不能显示的问题

3. 如果还不行,清除缓存

如果添加了第二部的配置,但还是显示中文乱码, 那么有可能是缓存的问题, 执行rm -r ~/.cache/matplotlib

两行代码解决Jupyter Notebook中文不能显示的问题

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
在Python下尝试多线程编程
Apr 28 Python
python+django快速实现文件上传
Oct 24 Python
python使用tensorflow深度学习识别验证码
Apr 03 Python
python实现对求解最长回文子串的动态规划算法
Jun 02 Python
PyCharm代码回滚,恢复历史版本的解决方法
Oct 22 Python
纯用NumPy实现神经网络的示例代码
Oct 24 Python
python+jinja2实现接口数据批量生成工具
Aug 28 Python
分享8点超级有用的Python编程建议(推荐)
Oct 13 Python
Python命名空间namespace及作用域原理解析
Jun 05 Python
Appium+Python实现简单的自动化登录测试的实现
Jan 26 Python
python使用XPath解析数据爬取起点小说网数据
Apr 22 Python
Python实现DBSCAN聚类算法并样例测试
Jun 22 Python
python基础详解之if循环语句
Apr 24 #Python
解决jupyter notebook图片显示模糊和保存清晰图片的操作
Jupyter notebook 输出部分显示不全的解决方案
Apr 24 #Python
Python opencv缺陷检测的实现及问题解决
解决jupyter notebook启动后没有token的坑
numpy数据类型dtype转换实现
Apr 24 #Python
解决python存数据库速度太慢的问题
Apr 23 #Python
You might like
PHP添加MySQL数据记录代码
2008/06/07 PHP
Thinkphp模板中使用自定义函数的方法
2012/09/23 PHP
php中如何判断一个网页请求是ajax请求还是普通请求
2013/08/10 PHP
ThinkPHP在Cli模式下使用模板引擎的方法
2015/09/25 PHP
JS拖动技术 关于setCapture使用
2010/12/09 Javascript
jquery星级插件、支持页面中多次使用
2012/03/25 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
jQuery 1.9.1源码分析系列(十五)动画处理之缓动动画核心Tween
2015/12/03 Javascript
JS HTML5拖拽上传图片预览
2016/07/18 Javascript
Bootstrap Table从服务器加载数据进行显示的实现方法
2016/09/29 Javascript
Vuejs在v-for中,利用index来对第一项添加class的方法
2018/03/03 Javascript
详解如何配置vue-cli3.0的vue.config.js
2018/08/23 Javascript
解决vue keep-alive 数据更新的问题
2018/09/21 Javascript
vue里input根据value改变背景色的实例
2018/09/29 Javascript
详解如何webpack使用DllPlugin
2018/09/30 Javascript
深入解析Vue源码实例挂载与编译流程实现思路详解
2019/05/05 Javascript
vue中使用百度脑图kityminder-core二次开发的实现
2019/09/26 Javascript
关于vue路由缓存清除在main.js中的设置
2019/11/06 Javascript
javascript Canvas动态粒子连线
2020/01/01 Javascript
[03:56]显微镜下的DOTA2第十一期——鬼畜的死亡先知播音员
2014/06/23 DOTA
[02:17]DOTA2亚洲邀请赛 RAVE战队出场宣传片
2015/02/07 DOTA
浅谈python jieba分词模块的基本用法
2017/11/09 Python
TensorFlow Session使用的两种方法小结
2018/07/30 Python
对python for 文件指定行读写操作详解
2018/12/29 Python
numpy.random.shuffle打乱顺序函数的实现
2019/09/10 Python
英国在线玫瑰专家:InterRose
2019/12/01 全球购物
长曲棍球装备:Lacrosse Monkey
2020/12/02 全球购物
经典优秀个人求职自荐信格式
2013/09/25 职场文书
地理科学专业毕业生求职信
2013/10/15 职场文书
初中女生自我鉴定
2013/12/19 职场文书
教师绩效工资方案
2014/02/01 职场文书
技校毕业生个人学习的自我评价
2014/02/21 职场文书
企业年会主持词
2014/03/27 职场文书
办理收楼委托书范本
2014/10/09 职场文书
《称赞》教学反思
2016/02/17 职场文书
总结Pyinstaller打包的高级用法
2021/06/28 Python