Skip to main content
 首页 » 编程设计

python之无法向饼图添加标题(matplotlib)

2025年05月04日17开发

plt.title('Survival Rate') 
plt.pie(total_survival, labels=[str(survival_percent) + "% " + "survived", str(100- survival_percent) + "% " + "died"]) 

我正在尝试向饼图添加标题,但出现此错误:

--------------------------------------------------------------------------- 
TypeError                                 Traceback (most recent call last) 
<ipython-input-250-7e0f3cd8c625> in <module>() 
----> 1 plt.title('Survival Rate') 
  2 plt.pie(total_survival, labels=[str(survival_percent) + "% " + "survived", str(100- survival_percent) + "% " + "died"]) 
  3  
 
TypeError: 'str' object is not callable 

我在网上看到的所有资源都将其标题写为括号内的字符串,并且不将其作为参数包含在 plt.pie() 中,所以我不确定我要去哪里错误的。

请您参考如下方法:

下面的代码工作正常:

import matplotlib.pyplot as plt 
survival_percent = 67 
total_survival = [67,33] 
plt.title('Survival Rate') 
plt.pie(total_survival, labels=[str(survival_percent) + "% " + "survived", str(100- survival_percent) + "% " + "died"]) 
 
plt.show() 

因此,您得到的错误是由您未在此处显示的部分代码产生的。 我们现在只能猜测,但错误 'str' object is not callable 表明您已将 plt.title 重新定义为字符串。 例如,如果您在代码中的某处编写了类似

的内容,则可能会发生这种情况
plt.title = 'Survival Rate' 

(这当然不合理)然后稍后调用(正确)

plt.title('Survival Rate') 会导致您收到错误。