Как в Matplotlib организовать подписи данных в функции
Необходимо сделать подписи к каждому графику и изменить подписи в легенде
def morb_mort_plot(data, x, y, ylim, figsize=(12, 5), grid=True):
data.plot(figsize=figsize, grid=grid, x=x, y = y)
plt.legend(bbox_to_anchor=(1.2, 0.6))
morb_mort_plot(data = data.query('mkb == "C00_C96"' ), x = 'year', y = ['crude_rates', 'asr'], ylim = [0, 100])
morb_mort_plot(data = data.query('mkb == "C33_C34"' ), x = 'year', y = ['crude_rates', 'asr'], ylim = [0, 100])
morb_mort_plot(data = data.query('mkb == "C50"' ), x = 'year', y = ['crude_rates', 'asr'], ylim = [0, 100])
morb_mort_plot(data = data.query('mkb == "C53"' ), x = 'year', y = ['crude_rates', 'asr'], ylim = [0, 100])
При попытке поставить lable не отрабатывает функцию. Тоже самое при попытке настроить переименование xlabel и ylable
Примерный DataFrame
mkb year number crude_rates asr
C34 2015 85 2 1,5
C34 2018 19 1,61 0,98
C34 2019 27 2,29 1,48
C34 2017 44 3,73 2,54
C34 2015 35 1,19 0,73
Ответы (1 шт):
Автор решения: passant
→ Ссылка
Вы считаете, что вы привели воспроизводимы фрагмент кода? Ну да ладно, раз не привели - вот так выводит ваш датафрейм примерно в том виде, как вы и описали.
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
import pandas as pd
df=pd.DataFrame([[2015,85,2, 1.5],
[2016,19,1.61,0.98],
[2017,27,2.29,1.48],
[2018,44,3.73,2.54],
[2019,35,1.19,0.73]],
columns=['year', 'number', 'crude_rates', 'asr'])
df['year'] =pd.to_datetime(df['year'],format='%Y').dt.year
df.set_index('year', inplace=True)
ax = df.plot(grid=True)
ax.set_title('Заболеваемость С34')
ax.xaxis.set_major_locator(ticker.MultipleLocator(1))
ax.set_xlabel('Год')

