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

相关推荐
小墨宝4 小时前
vscode自带内网穿透
ide·vscode·编辑器
专注VB编程开发20年7 小时前
TRAE 稳定不排队、避开 “人满 / 没钱限流” 完整方案(实测有效)
ide·人工智能
量子炒饭大师9 小时前
【2026全新 Claude Code + VScode + CCswitch + 接入deepseek-v4-pro 套餐】从环境配置到实战演练:Claude Code彻底开箱指南!
ide·vscode·编辑器·deepseek·claude code·cc-switch
3Tony9 小时前
解决VScode报错:preLaunchTask“C/C++: gcc.exe 生成活动文件“已终止,退出代码为 -1.
c++·ide·vscode
Dvesiz9 小时前
【ClaudeCode平替(免费)】OpenCode 完整安装与 VSCode 使用指南
ide·vscode·编辑器·github·ai编程·claude·visual studio code
苏莹莹119 小时前
Chat took too long to get ready.Please ensure...<VSCode\Copilot>
ide·vscode·copilot
芯码学徒9 小时前
vscode上如何免费使用opencode插件
ide·vscode·编辑器·opencode
徐怀江9 小时前
ModusToolbox for vscode使用小记
ide·vscode·单片机·mcu·infineon
播播资源9 小时前
Visual Studio Code如何接入 API 使用OpenAI、claude、Gemini等最新大模型,国内直连教程
ide·vscode·编辑器
Snooker_1469 小时前
TRAE、VSCode上进行git管理
ide·git·vscode