matplotlib画图不能显示中文(无需修改文件)(最笨的解决方案)(懒人或新手或服务器版)

在这之前先推荐这个博主的解决方案,看起来真可能解决!:https://blog.csdn.net/wtySama/article/details/105316240

而我因为使用的是实验室的服务器,并非本地环境,没有user的权限,不能删除缓存文件,所以说只能另辟蹊径。

1. 查看环境中能用的字体(这个也是抄别人的)


import matplotlib.pyplot as plt
from matplotlib import font_manager

for font in font_manager.fontManager.ttflist:
    # 查看字体名以及对应的字体文件名
    print(font.name, '-', font.fname)

2. 把得出的结果图1,复制给gpt或者kimi之类的,询问它们哪些可以显示中文:

图1 代码运行结果

图2 询问gpt的结果

3. 照着图2的结果一个一个地试,画图,最后博主试到图中这个就能显示中文了。。。

详细的代码类似:在import语句之后插入代码,

import matplotlib.pyplot as plt
# 设置matplotlib的字体
plt.rcParams['font.family'] = 'Noto Sans CJK JP'  # 这里使用了
plt.rcParams['font.size'] = 12

然后再正常地画图,不用加任何的参数!例如博主的目的:

plt.xlim(0, 250)
plt.xlabel('Time')
plt.ylabel('功率(Kw)')
plt.legend()
plt.show()

##################################最终结果####################################

图3 正确的中文结果

#############################################################################

ps:博主也试着下过SimHei.ttf,但是最终都不是很能成功,没办法出此下策,但是只要能显示中文,不就行了?反正也能解决问题!

下面是原来的样子:

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值