Графики Matplotlib всех столбцов фрейма данных с оператором FOR - PullRequest
0 голосов
/ 08 мая 2020

Я хочу построить графики один за другим из фрейма данных с помощью оператора FOR.

names_list = df.columns.tolist()
for name in names_list:
    df[name].plot(figsize=(25, 5))

Этот код не годится. Графики изображены на одном рисунке, но должны быть на разных. введите описание изображения здесь

Как я могу получить несколько диаграмм вместо одной?

Ответы [ 2 ]

1 голос
/ 08 мая 2020

Попробуйте следующее:

names_list = df.columns.tolist()
for name in names_list:
    fig, ax = plt.subplots(figsize=(25, 5)) 
    df[name].plot(ax=ax)
0 голосов
/ 08 мая 2020

Если вы можете использовать seaborn , вот пример использования FacetGrid:

import seaborn as sns, matplotlib.pyplot as plt

In [102]: df.head(3)
Out[102]: 
        Date  Consumption  Wind  Solar  Wind+Solar  name
0 2006-01-01     1069.184   NaN    NaN         NaN   mid
1 2006-01-02     1380.521   NaN    NaN         NaN   mid
2 2006-01-03     1442.533   NaN    NaN         NaN  high

g = sns.FacetGrid(data=df,col='name',col_wrap=1,hue='name')
g.fig.set_size_inches(6,3) # compressed just to show example
g.map(sns.lineplot,'Date','Consumption')
plt.show()

Результат:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...