解决使用matplotlib画图无法显示中文

本文介绍了如何在使用Matplotlib进行绘图时,正确设置字体以显示中文字符,包括设置默认字体和解决负号显示问题的解决方案。通过添加特定的字体配置,读者可以确保中文标题和图例在图表中正常显示。


一、正常情况下(默认不显示中文)

import matplotlib.pyplot as plt
from pylab import *
Ux1 = [0.0227,1.8713,3.8285,6.5266,8.2801,9.6878,12.4071,15.1359]
Ux2 = [0.0244,1.8740,3.8355,6.5223,8.2797,9.6987,12.4206,15.1575]
plt.plot(Ux1,Ux2)
plt.title("中文-显示")
plt.show()

无法正常显示出中文,并且要把中文标题加在图片上的话会显示错误RuntimeWarning: Glyph 31034 missing from current font.
font.set_text(s, 0, flags=flags)
无法显示中文报错
警告原因:plt 画图是找不到字体,需要添加两行程序,如下:

mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体(解决中文无法显示的问题)
mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像时负号“-”显示方块的问题

中文不能正常显示

二、怎样让中文显示出来?

在代码中加上以下两条语句使中文和“-”显示出来

mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体(解决中文无法显示的问题)
mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像时负号“-”显示方块的问题

示例代码:

import matplotlib.pyplot as plt
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体(解决中文无法显示的问题)
mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像时负号“-”显示方块的问题
Ux1 = [0.0227,1.8713,3.8285,6.5266,8.2801,9.6878,12.4071,15.1359]
Ux2 = [0.0244,1.8740,3.8355,6.5223,8.2797,9.6987,12.4206,15.1575]
plt.plot(Ux1,Ux2)
plt.title("中文-显示")
plt.show()

结果显示:
成功显示中文

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

布兹学长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值