两行代码解决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 del()函数用法
Mar 24 Python
python计数排序和基数排序算法实例
Apr 25 Python
python uuid模块使用实例
Apr 08 Python
Python的Django框架中的数据过滤功能
Jul 17 Python
Python多线程实现同步的四种方式
May 02 Python
python爬虫中get和post方法介绍以及cookie作用
Feb 08 Python
Python模拟登录的多种方法(四种)
Jun 01 Python
python+selenium打印当前页面的titl和url方法
Jun 22 Python
pycharm安装和首次使用教程
Aug 27 Python
python shutil文件操作工具使用实例分析
Dec 25 Python
Python通过kerberos安全认证操作kafka方式
Jun 06 Python
OpenCV实现机器人对物体进行移动跟随的方法实例
Nov 09 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
星际争霸中的对战模式介绍
2020/03/04 星际争霸
echo, print, printf 和 sprintf 区别
2006/12/06 PHP
浅谈PHP的exec()函数无返回值排查方法(必看)
2017/03/31 PHP
html读出文本文件内容
2007/01/22 Javascript
EditPlus注册码生成器(js代码实现)
2013/03/25 Javascript
客户端js判断文件类型和文件大小即限制上传大小
2013/11/20 Javascript
JS的location.href跳出框架打开新页面的方法
2014/09/04 Javascript
javascript实现行拖动的方法
2015/05/27 Javascript
基于jQuery滑动杆实现购买日期选择效果
2015/09/15 Javascript
laypage分页控件使用实例详解
2016/05/19 Javascript
基于构造函数的五种继承方法小结
2017/07/27 Javascript
ES6中Array.find()和findIndex()函数的用法详解
2017/09/16 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
Vue 微信端扫描二维码苹果端却只能保存图片问题(解决方法)
2020/01/19 Javascript
[05:08]第一届“网鱼杯”DOTA2比赛精彩集锦
2014/09/05 DOTA
Python MD5文件生成码
2009/01/12 Python
python正则实现计算器功能
2017/12/14 Python
python如何压缩新文件到已有ZIP文件
2018/03/14 Python
python matlibplot绘制3D图形
2018/07/02 Python
对Python中class和instance以及self的用法详解
2019/06/26 Python
详解python中的time和datetime的常用方法
2019/07/08 Python
基于Python的微信机器人开发 微信登录和获取好友列表实现解析
2019/08/21 Python
Python实现栈和队列的简单操作方法示例
2019/11/29 Python
django admin 添加自定义链接方式
2020/03/11 Python
如何基于matlab相机标定导出xml文件
2020/11/02 Python
5分钟快速掌握Python定时任务框架的实现
2021/01/26 Python
开办加工厂创业计划书
2014/01/03 职场文书
初中三好学生自我鉴定
2014/04/07 职场文书
2014年学雷锋活动总结
2014/06/26 职场文书
督导岗位职责
2015/02/04 职场文书
财务个人年度总结范文
2015/02/26 职场文书
2015年政务公开工作总结
2015/05/19 职场文书
2015中秋节晚会主持词
2015/07/01 职场文书
高中语文教学反思范文
2016/02/16 职场文书
SpringBoot 集成Redis 过程
2021/06/02 Redis
详解SQL的窗口函数
2022/04/21 Oracle