两行代码解决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中使用ElementTree解析XML示例
Jun 02 Python
Python爬虫辅助利器PyQuery模块的安装使用攻略
Apr 24 Python
pycharm执行python时,填写参数的方法
Oct 29 Python
python实现多进程代码示例
Oct 31 Python
Python从Excel中读取日期一列的方法
Nov 28 Python
Python函数返回不定数量的值方法
Jan 22 Python
Python高级property属性用法实例分析
Nov 19 Python
tensorflow estimator 使用hook实现finetune方式
Jan 21 Python
Pytest框架之fixture的详细使用教程
Apr 07 Python
Django模板报TemplateDoesNotExist异常(亲测可行)
Dec 18 Python
python 逆向爬虫正确调用 JAR 加密逻辑
Jan 12 Python
python 实现定时任务的四种方式
Apr 01 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
NO3第三帝国留言簿制作过程
2006/10/09 PHP
php Ubb代码编辑器函数代码
2012/07/05 PHP
服务器上配置PHP运行环境教程
2015/02/12 PHP
php实现微信支付之现金红包
2018/05/30 PHP
PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】
2019/09/10 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
Iframe自适应高度绝对好使的代码 兼容IE,遨游,火狐
2011/01/27 Javascript
用JavaScript仿PS里的羽化效果代码
2011/12/20 Javascript
js弹出的对话窗口永远保持居中显示
2012/12/15 Javascript
Struts2的s:radio标签使用及用jquery添加change事件
2013/04/08 Javascript
node.js中的path.delimiter方法使用说明
2014/12/09 Javascript
js实现带有介绍的Select列表菜单实例
2015/08/18 Javascript
JavaScript实现简单的tab选项卡切换
2016/01/05 Javascript
js获取上传文件的绝对路径实现方法
2016/08/02 Javascript
js事件源window.event.srcElement兼容性写法(详解)
2016/11/25 Javascript
Bootstrap中datetimepicker使用小结
2016/12/28 Javascript
BootStrap学习笔记之nav导航栏和面包屑导航
2017/01/03 Javascript
vue+vuex+axio从后台获取数据存入vuex实现组件之间共享数据
2017/04/22 Javascript
vue脚手架vue-cli的学习使用教程
2017/06/06 Javascript
ajax +NodeJS 实现图片上传实例
2017/06/06 NodeJs
vue中v-for加载本地静态图片方法
2018/03/03 Javascript
vue 获取及修改store.js里的公共变量实例
2019/11/06 Javascript
React组件设计模式之组合组件应用实例分析
2020/04/29 Javascript
Vue 样式切换及三元判断样式关联操作
2020/08/09 Javascript
微信小程序学习之自定义滚动弹窗
2020/12/20 Javascript
[01:37]PWL S2开团时刻DAY1&2——这符有毒
2020/11/20 DOTA
Python实现并行抓取整站40万条房价数据(可更换抓取城市)
2016/12/14 Python
python实现K近邻回归,采用等权重和不等权重的方法
2019/01/23 Python
django使用xadmin的全局配置详解
2019/11/15 Python
课改先进个人汇报材料
2014/01/26 职场文书
副厂长岗位职责
2014/02/02 职场文书
教师党员公开承诺书
2014/03/25 职场文书
共产党员公开承诺践诺书
2014/05/28 职场文书
计算机专业毕业生自荐书
2014/06/02 职场文书
超详细Python解释器新手安装教程
2021/05/10 Python
Python代码风格与编程习惯重要吗?
2021/06/03 Python