AttributeError: ‘Text‘ object has no property ‘FontProperties‘解决办法

在执行《机器学习实战》中的K-NN算法示例时,遇到AttributeError,原因是图表标题设置中的FontProperties拼写错误。问题在于大小写的不一致,正确用法是将FronProperties改为全小写fontproperties。修正此错误后,代码能够成功运行。涉及到的库包括matplotlib,用于设置汉字显示和调整字体属性。

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

今天在试跑《机器学习实战》一书中的K-NN算法时,遇到了错误:AttributeError: 'Text' object has no property 'FontProperties'

具体情况为:

经检查发现原因为:在给图标标题设置标签时,出现了大小写的错误。FronProperties应改为:全小写的fronproperties。

※※※----注意:只有在开始设置标签时才需要将FronProperties应改为:全小写的fronproperties在引入字体属性和配置字体路径时,依旧是FronProperties -------------※※※

#引入字体属性模块
from matplotlib.font_manager import FontProperties
# 设置汉字格式
font = FontProperties(fname=r"c:\windows\fonts\simsunb.ttf", size=14) 
#设置标题,x轴label,y轴label
axs0_title_text = axs[0][0].set_title(u'每年获得的飞行常客里程数与玩视频游戏所消耗时间占比',fontproperties=font)
axs0_xlabel_text = axs[0][0].set_xlabel(u'每年获得的飞行常客里程数',fontproperties=font)
axs0_ylabel_text = axs[0][0].set_ylabel(u'玩视频游戏所消耗时间占比',fontproperties=font)
plt.setp(axs0_title_text, size=9, weight='bold', color='red')  
plt.setp(axs0_xlabel_text, size=7, weight='bold', color='black')  
plt.setp(axs0_ylabel_text, size=7, weight='bold', color='black') 

这样就OK啦~成功运行

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值