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

相关推荐
星马梦缘17 分钟前
jupyter Kernel Disconnected崩溃的修复
ide·python·jupyter
蜡台1 小时前
JetBrains IDEA 安装 卸载相关总结
java·ide·intellij-idea·注册码
獨枭2 小时前
Visual Studio 打开 .vdproj 显示“不兼容”的问题分析与解决
ide·visual studio
克里斯蒂亚诺更新3 小时前
myeclipse和tomcat的使用
ide·tomcat·myeclipse
一定要AK4 小时前
SSM 整合实战—— IDEA 版
java·ide·intellij-idea
Freak嵌入式5 小时前
MicroPython LVGL基础知识和概念:交互与事件处理
ide·嵌入式·gui·lvgl·micropython·电子·upypi
书到用时方恨少!5 小时前
Python Matplotlib 使用指南:数据可视化的画笔
python·信息可视化·matplotlib
Pixlout6 小时前
关于7元算子演算技术的个人笔记
ide·笔记·硬件工程
爱分享的阿Q6 小时前
从AI IDE到Agent统一工作区:开发环境的范式跃迁
ide·人工智能
Freak嵌入式1 天前
LVGL基础知识和概念:视觉样式与资源系统
ide·驱动开发·嵌入式·lvgl·micropython·upypi