jupyter matplotlib 中文报错/乱码

在 jupyter 中使用 matplotlib 进行画图的时候, 如果包含中文, 会有一堆报错, 并且输出的图片中的中文也无法正常显示.

解决方案:

  1. 查找支持的中文字体
py 复制代码
import matplotlib.font_manager as fm

# matplotlib only know these fonts
font_list = [f for f in fm.fontManager.ttflist]

# check font names what you want
# 'CJK', 'Han', , 'TW'
cjk_list = ['CN']

for f in font_list:
    if any(s.lower() in f.name.lower() for s in cjk_list):
        print(f'name={f.name}, path={f.fname}')

输出结果:

复制代码
name=AR PL UMing CN, path=/usr/share/fonts/cjkuni-uming/uming.ttc

如果没有结果, 则需要去下载安装字体

  1. 设置字体

在输出结果中, 找一个 name 的值进行设置:

py 复制代码
%matplotlib inline

plt.rc('font', family='AR PL UMing CN')

matplotlib 的图中, 中文就可以正常显示了

如果依然不行, 尝试删除 rm -rf ~/.matplotlib/font* or rm -rf ~/.cache/.matplotlib/fontl*. 重启 jupyter

相关推荐
LcVong7 小时前
老版本Android源码在新版本IDE打开的常规报错及解决方案
android·ide
无限进步_10 小时前
二叉搜索树(BST)详解:从原理到实现
开发语言·数据结构·c++·ide·后端·github·visual studio
The_cute_cat12 小时前
关于PyCharm使用Poetry的避坑
ide·python·pycharm
lingzhilab12 小时前
零知IDE——基于ESP-NOW协议的ESP32 MESH组网教程
ide
Thomas214313 小时前
jupyterhub on k8s jupyter总是无响应
jupyter·容器·kubernetes
pulinzt13 小时前
【python】第六节anacoda+配置Jupyter notebook
人工智能·python·jupyter
康康的AI博客1 天前
腾讯王炸:CodeMoment - 全球首个产设研一体 AI IDE
ide·人工智能
码道功成1 天前
Pycham及IntelliJ Idea常用插件
java·ide·intellij-idea
文 丰1 天前
【Android Studio】gradle下载慢解决方案(替换配置-非手工下载安装包)
android·ide·android studio
Jackson@ML1 天前
2026最新版Visual Studio Code安装使用指南
ide·vscode·编辑器