解决Ubuntu系统vscode编译环境matplotlib无法显示中文的问题

文章讲述了如何在UbuntuWSL环境下,使用VSCode的JupyterNotebook进行数据分析时,通过matplotlib库设定图表的中英文字体。具体解决方案是利用FontProperties分别设置中文(微软雅黑)和英文(TimesNewRoman)字体,以解决图表字体统一的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实现目标:论文出图,图中的英文为Times New Roman,同时中文为微软雅黑等其他字体。

存在问题:单独实现任一一种字体的统一都很简单(请参考ubuntu16.04中解决matplotlib画图中文无法显示问题 - 小白的学习笔记),但同时实现就很麻烦。

编译环境:我的编译环境是在vscode中的ubunt wsl,用jupyter notebook做数据分析。

解决方法:从matplotlib.font_manager中导入FontProperties,采用中英文字体分别表达的方式

示例代码:

from matplotlib.font_manager import FontProperties
import matplotlib.pyplot as plt

chinese_font = FontProperties(fname='/路径/微软雅黑.ttf')
english_font = FontProperties(fname='/路径/times new roman.ttf')

x = [1,2,3]
y = [4,5,6]
fig, ax = plt.subplots()
ax.plot()

ax.set_xlabel('abc',fontproperties=english_font , fontsize=14)
ax.set_xlabel('中文',fontproperties=chinese_font , fontsize=14)
plt.show()

效果:中文为微软雅黑,英文为Times New Roman

 参考文献:

ubuntu16.04中解决matplotlib画图中文无法显示问题 - 小白的学习笔记

vscode解决matplotlib不显示中文问题_瑶光光的博客-优快云博客_vscode python matplotlib.rc

ChatGPT:OpenAI

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值