У меня есть линейный график, построенный с использованием 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 () выглядит так:
Когда я пытаюсь использовать relplot из Seaborn, я получаю следующую ошибку:
ValueError: не удалось передать входной массив из shape (10) в shape (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, чтобы включить или отключить различные категории, чтобы график был более читабельным при представлении.
Заранее спасибо.