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

实现目标:论文出图,图中的英文为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不显示中文问题_瑶光光的博客-CSDN博客_vscode python matplotlib.rc

ChatGPT:OpenAI

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值