gpt4 book ai didi

python - matplotlib 错误

转载 作者:行者123 更新时间:2023-12-01 03:54:32 25 4
gpt4 key购买 nike

我有数据

city    inc pop edu crime   cult
New-York 29343,00 8683,00 0,00 10,40 0,00
Moscow 25896,00 17496,00 0,00 10,20 1,0
Rome 21785,00 15063,00 0,00 14,20 1,00
London 20000,00 70453,00 1,00 18,00 1,00
Berlin 44057,00 57398,00 1,00 6,30 1,00

我尝试构建绘图并为plot命名并更改列的颜色

desire_salary = (df[(df['inc'] >= int(salary_people))])
fig = plt.figure()
result = desire_salary.pivot_table('city', 'cult', aggfunc='count').plot(kind='bar', alpha=0.75, rot=0, label="Presence / Absence of cultural centre")
plt.xlabel("Cultural centre")
plt.ylabel("Frequency")
plt.set_title('Salary and culture')
plt.plot(result[[0]], color='red')
plt.plot(result[[1]], color='blue')
plt.show()

但它返回错误AttributeError:'module'对象没有属性'set_title'TypeError:'AxesSubplot'对象没有属性'__getitem__'

最佳答案

您正在尝试使用 AxesSubplot 类中的 set_title 方法,但您没有使用 mpl 面向对象的方法。有两种方法可以纠正此问题:

  1. 使用plt.title('薪资和文化')

  2. 切换到更灵活的 OO 方法,并使用相关的 Axes 方法设置标题和轴标签,例如 ax.set_title ax.set_xlabel

第二个错误的根源是,当您在 pivot_table 上调用 .plot 时,您返回一个 matplotlib AxesSubplot 对象,而不是数据帧。因此,然后您尝试绘制 result[[0]],它正在尝试索引 AxesSubplot 对象。

desire_salary = (df[(df['inc'] >= int(salary_people))])
fig = plt.figure()

# Create the pivot_table
result = desire_salary.pivot_table('city', 'cult', aggfunc='count')

# plot it in a separate step. this returns the matplotlib axes
ax = result.plot(kind='bar', alpha=0.75, rot=0, label="Presence / Absence of cultural centre", ax=ax)

ax.set_xlabel("Cultural centre")
ax.set_ylabel("Frequency")
ax.set_title('Salary and culture')

ax.plot(result[[0]], color='red')
ax.plot(result[[1]], color='blue')
plt.show()

关于python - matplotlib 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37724031/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com