前几天使用matplotlib 绘图的时候发现无法使用中文字符,所以找了个笔记,顺便分享给大家
开发环境
- windows 8.1 64bit
- python 3.6.0
- matplotlib 3.2.1
问题背景
使用 matplotlib 绘制函数图像的时候,发现设置图像名称或图例需要汉字显示的时候只能得到空格
生成图像中的中文错误效果
原因分析
python中的matplotlib仅支持Unicode编码,默认是不显示中文的.
解决方案
解决方案1
python文件中添上一段语句
plt.rcParams['font.sans-serif']=['Simhei']
之后再次运行得出图像
解决方案2
制定加载本地的字体文件
在python文件中导入matplotlib的字体控制方法
from matplotlib.font_manager import FontProperties
另设font变量存储设置好的属性
font = FontProperties(fname=r'C:\Windows\Fonts\simhei.ttf',size=14)
设置 title 内容时将 font的存储对象赋给 fontproperties
属性
plt.title(u'y=x 与 y=x^0.5 的函数图像比较',fontproperties = font)
修改源码后生成的图像
附件
修改前的 python 文件
import numpy as np import matplotlib.pyplot as plt x = np.linspace(0,100) # 设置自变量的取值[0,100] y1 = x y2 = x**0.5 plt.figure() plt.plot(x,y1,label='y=x') plt.plot(x,y2,label='y=x^0.5',color='red') plt.title('y=x 与 y=x^0.5 的函数图像比较') plt.legend() plt.show()
经解决方案1修改后的源码
import numpy as np import matplotlib.pyplot as plt x = np.linspace(0,100) # 设置自变量的取值[0,100] y1 = x y2 = x**0.5 plt.figure() plt.plot(x,y1,label='y=x') plt.plot(x,y2,label='y=x^0.5',color='red') plt.title('y=x 与 y=x^0.5 的函数图像比较') plt.rcParams['font.sans-serif']=['Simhei'] plt.legend() plt.show()
经解决方案2修改后的源码
import numpy as np from matplotlib.font_manager import FontProperties import matplotlib.pyplot as plt x = np.linspace(0,100) # 设置自变量的取值[0,100] y1 = x y2 = x**0.5 plt.figure() plt.plot(x,y1,label='y=x') plt.plot(x,y2,label='y=x^0.5',color='red') font = FontProperties(fname=r'C:\Windows\Fonts\simhei.ttf',size=14) plt.title(u'y=x 与 y=x^0.5 的函数图像比较',fontproperties = font) plt.legend() plt.show()
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“matplotlib 生成的图像中无法显示中文字符的解决方法”评论...
更新日志
2024年11月08日
2024年11月08日
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]