两行代码解决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 Django(图文)
Nov 04 Python
Python常用的文件及文件路径、目录操作方法汇总介绍
May 21 Python
利用numpy实现一、二维数组的拼接简单代码示例
Dec 15 Python
Python实现Singleton模式的方式详解
Aug 08 Python
python利用dlib获取人脸的68个landmark
Nov 27 Python
Python中pyecharts安装及安装失败的解决方法
Feb 18 Python
python自动脚本的pyautogui入门学习
Apr 01 Python
计算Python Numpy向量之间的欧氏距离实例
May 22 Python
Tensorflow加载Vgg预训练模型操作
May 26 Python
python按顺序重命名文件并分类转移到各个文件夹中的实现代码
Jul 21 Python
mac系统下安装pycharm、永久激活、中文汉化详细教程
Nov 24 Python
对Pytorch 中的contiguous理解说明
Mar 03 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中时间轴开发(刚刚、5分钟前、昨天10:23等)
2011/10/03 PHP
PHP使用Mysql事务实例解析
2014/09/08 PHP
PHP多线程编程之管道通信实例分析
2015/03/07 PHP
Symfony2开发之控制器用法实例分析
2016/02/05 PHP
很酷的javascript loading效果代码
2008/06/18 Javascript
禁止JQuery中的load方法装载IE缓存中文件的方法
2009/09/11 Javascript
过虑特殊字符输入的js代码
2010/08/05 Javascript
jquery 实现二级/三级/多级联动菜单的思路及代码
2013/04/08 Javascript
jquery实现table鼠标经过变色代码
2013/09/25 Javascript
NodeJS学习笔记之Connect中间件模块(二)
2015/01/27 NodeJs
jQuery数据缓存用法分析
2015/02/20 Javascript
javascript实现超炫的向上滑行菜单实例
2015/08/03 Javascript
基于jQuery滑动杆实现购买日期选择效果
2015/09/15 Javascript
jquery无限级联下拉菜单简单实例演示
2015/11/23 Javascript
JS模拟简易滚动条效果代码(附demo源码)
2016/04/05 Javascript
Android中Okhttp3实现上传多张图片同时传递参数
2017/02/18 Javascript
js 公式编辑器 - 自定义匹配规则 - 带提示下拉框 - 动态获取光标像素坐标
2018/01/04 Javascript
javascript中的replace函数(带注释demo)
2018/01/07 Javascript
vue+element的表格实现批量删除功能示例代码
2018/08/17 Javascript
jQuery实现的别踩白块小游戏完整示例
2019/01/07 jQuery
Python程序语言快速上手教程
2012/07/18 Python
python实现电子词典
2020/04/23 Python
Python线性拟合实现函数与用法示例
2018/12/13 Python
python修改FTP服务器上的文件名
2019/09/11 Python
关于pycharm中pip版本10.0无法使用的解决办法
2019/10/10 Python
pytorch 实现在一个优化器中设置多个网络参数的例子
2020/02/20 Python
Python 日期时间datetime 加一天,减一天,加减一小时一分钟,加减一年
2020/04/16 Python
解决pycharm编辑区显示yaml文件层级结构遇中文乱码问题
2020/04/27 Python
使用CSS3设计地图上的雷达定位提示效果
2016/04/05 HTML / CSS
北美领先的牛仔品牌:Buffalo David Bitton
2017/05/22 全球购物
30年同学聚会邀请函
2014/01/25 职场文书
单位委托书范本(3篇)
2014/09/18 职场文书
领导干部“四风”问题批评与自我批评材料
2014/09/24 职场文书
逃课检讨书范文
2015/05/06 职场文书
教务处教学工作总结
2015/08/10 职场文书
忆童年!用Python实现愤怒的小鸟游戏
2021/06/07 Python