使用Seaborn的relplot而不是Matplotlib的图

时间:2019-10-12 20:26:38

标签: matplotlib seaborn

我有一个使用matplotlib和以下代码构建的折线图:

f = plt.figure(figsize=(20, 7))
sns.set_style("darkgrid")
ax = plt.subplot(111)
df.plot(x='Date', y=['Burglary',
                    'Criminal Damage',
                    'Criminal Damage',
                    'Drugs',
                    'Fraud or Forgery',
                    'Robbery',
                    'Sexual Offences', 
                    'Theft and Handling',
                    'Violence Against The Person',
                    'Other Notifiable Offences'], ax=f.gca())
ax.legend(loc='center left', bbox_to_anchor=(1, 0.5))
plt.show()

工作正常。 df.head()看起来像:

first 4 rows of dataframe

当我尝试使用Seaborn中的relplot时,出现以下错误:

ValueError:无法将输入数组从形状(10)广播到形状(105)

修改后的代码如下:

f = plt.figure(figsize=(20, 7))
sns.set_style("darkgrid")
ax = plt.subplot(111)
sns.relplot(data=df, x='Date', y=['Burglary',
                    'Criminal Damage',
                    'Criminal Damage',
                    'Drugs',
                    'Fraud or Forgery',
                    'Robbery',
                    'Sexual Offences', 
                    'Theft and Handling',
                    'Violence Against The Person',
                    'Other Notifiable Offences'], ax=f.gca())
ax.legend(loc='center left', bbox_to_anchor=(1, 0.5))
plt.show()

数据框是否需要采用其他结构,或者我在代码中缺少某些内容?我想使用Seaborn,所以我可以打开或关闭不同的类别,以便在呈现时更易读。

谢谢。

0 个答案:

没有答案