【问题标题】:Invalid syntax in python while trying to plot a pareto graph尝试绘制帕累托图时python中的语法无效
【发布时间】:2021-12-07 12:58:09
【问题描述】:

目前,我正在尝试使用我所在城市的疫苗接种的一些数据绘制帕累托图。因此,为此,我计划在左侧 y 轴上绘制接种个体的绝对累积频率,在 x 轴上绘制疫苗接种日期,在右侧 y 轴上绘制相对频率。

'''

fig,(ax1, ax2) = plt.subplots(2,1,figsize=(15,15))

ax1.set_title('Relative Frequency of vaccinated ageGroup individuals by date of vaccination', fontsize= 20)
ax1.set_ylabel('Relative Frequency of vaccinated individuals by ageGroup (%)', fontsize = 15)
ax1.set_ylim([-10,10])
ax1.tick_params(axis='y', labelcolor=color2)
ax1.bar(df.filter(items=['data_vacinacao', 'ageGroup','individuos']).count().sort_values('data_vacinacao', ascending = False).unstack().plot(ax1=ax1)
ax1.set_xticklabels(df['date_vacination'], rotation=45, size=20)
ax1.set_yticklabels(df['individuals'], size=20)

ax2 = ax1.twinx()
    ax2.set_xlabel('Months', fontsize = 15)
    ax2.set_yticklabels(df['cum (%)'])
    ax2.plot(df.filter(items=['date_vacination'', 'ageGroup', 'ageGroup freq(%)']).count().sort_values('data_vacinacao', ascending = False)
    ax2.tick_params(axis = 'y',labelcolor = color2)
    ax2.set_ylim([0,120])

    
plt.show()

''' 结果:

File "<ipython-input-31-76f5d92b64c9>", line 8
    ax1.set_xticklabels(df['date_vacination'], rotation=45, size=20)
    ^
SyntaxError: invalid syntax

但是,每当我更改第 8 行的内容时,引用第 8 行之后的代码的无效语法就会继续出现。

有什么办法可以改变吗?

【问题讨论】:

  • 在这种情况下,错误几乎总是在报告的行高于行。而且它几乎总是某种不匹配的括号。计算上一行中所有的开括号和右括号,它们都匹配吗?
  • 顺便说一下,看看你在这个网站上代码的颜色(或者如果你有一个很好的语法高亮编辑器,在你的编辑器中)。代码后面似乎没有什么问题吗?压痕不看起来也很好吗?

标签: python data-science


【解决方案1】:

语法错误出现在第 8 行,因为它试图完成第 7 行的解析,但没有找到预期的内容。在这种情况下,第 7 行缺少结束 )。因此,除非它接下来遇到的是逗号或括号,否则它会在接下来找到的任何内容上引发语法错误,无论是第 8 行还是第 9 行,如果您将第 8 行注释掉。

【讨论】:

    猜你喜欢
    • 2021-06-26
    • 2019-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-22
    • 1970-01-01
    相关资源
    最近更新 更多