擅长:python、mysql、java
<p>您试图使用<code>AxesSubplot</code>类中的<code>set_title</code>方法,但是您没有使用mpl面向对象的方法。有两种方法可以纠正这种情况:</p>
<ol>
<li><p>使用<code>plt.title('Salary and culture')</code></p></li>
<li><p>切换到更灵活的OO方法,并使用相关的<code>Axes</code>方法设置标题和轴标签,例如<code>ax.set_title</code>,<code>ax.set_xlabel</code>,等等。</p></li>
</ol>
<p>第二个错误的来源是,在对<code>pivot_table</code>调用<code>.plot</code>时,返回的是matplotlib <code>AxesSubplot</code>对象,而不是<code>DataFrame</code>。因此,您尝试绘制<code>result[[0]]</code>,它试图索引<code>AxesSubplot</code>对象。在</p>
<pre><code>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()
</code></pre>