两行代码解决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作用域用法实例详解
Mar 15 Python
python查看微信好友是否删除自己
Dec 19 Python
Python实现自动发送邮件功能
Mar 02 Python
详解Django之admin组件的使用和源码剖析
May 04 Python
Tensorflow卷积神经网络实例
May 24 Python
IntelliJ IDEA安装运行python插件方法
Dec 10 Python
Django url,从一个页面调到另个页面的方法
Aug 21 Python
python实现自动化报表功能(Oracle/plsql/Excel/多线程)
Dec 02 Python
Python如何基于rsa模块实现非对称加密与解密
Jan 03 Python
Python unittest装饰器实现原理及代码
Sep 08 Python
pycharm部署django项目到云服务器的详细流程
Jun 29 Python
Python中文分词库jieba(结巴分词)详细使用介绍
Apr 07 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的文章管理系统(二)
2006/10/09 PHP
简单介绍win7下搭建apache+php+mysql开发环境
2015/08/06 PHP
php实现不通过扩展名准确判断文件类型的方法【finfo_file方法与二进制流】
2017/04/18 PHP
PHP使用ActiveMQ实现消息队列的方法详解
2019/05/31 PHP
laravel实现上传图片并在页面显示的例子
2019/10/14 PHP
javascript 时间比较实现代码
2009/10/28 Javascript
使用JavaScript判断图片是否加载完成的三种实现方式
2014/05/04 Javascript
JS实现Select的option上下移动的方法
2016/03/01 Javascript
jQuery实现IE输入框完成placeholder标签功能的方法
2017/09/20 jQuery
angular2 组件之间通过service互相传递的实例
2018/09/30 Javascript
Puppeteer 爬取动态生成的网页实战
2018/11/14 Javascript
解决vue-cli 打包后自定义动画未执行的问题
2019/11/12 Javascript
vue 对axios get pust put delete封装的实例代码
2020/01/05 Javascript
在vue中给后台接口传的值为数组的格式代码
2020/11/12 Javascript
Jquery+javascript实现支付网页数字键盘
2020/12/21 jQuery
Python 创建子进程模块subprocess详解
2015/04/08 Python
一波神奇的Python语句、函数与方法的使用技巧总结
2015/12/08 Python
浅谈Python单向链表的实现
2015/12/24 Python
Sanic框架流式传输操作示例
2018/07/18 Python
基于Django框架利用Ajax实现点赞功能实例代码
2018/08/19 Python
Python实现计算文件MD5和SHA1的方法示例
2019/06/11 Python
Python画图高斯分布的示例
2019/07/10 Python
Django打印出在数据库中执行的语句问题
2019/07/25 Python
python rsa实现数据加密和解密、签名加密和验签功能
2019/09/18 Python
python pandas利用fillna方法实现部分自动填充功能
2020/03/16 Python
Anaconda+vscode+pytorch环境搭建过程详解
2020/05/25 Python
Keras中的多分类损失函数用法categorical_crossentropy
2020/06/11 Python
一款利用html5和css3实现的3D滚动特效的教程
2015/01/04 HTML / CSS
波兰在线杂货店:Polski Koszyk
2019/11/02 全球购物
总经理助理的八要求
2013/11/12 职场文书
初三开学计划书
2014/04/27 职场文书
部门2014年度工作总结
2014/11/12 职场文书
老公保证书
2015/01/17 职场文书
Python的这些库,你知道多少?
2021/06/09 Python
浅析Redis Sentinel 与 Redis Cluster
2021/06/24 Redis
升级 Win11 还是坚守 Win10?微软 Win11 新系统缺失功能大盘点
2022/04/05 数码科技