Вы можете использовать следующие методы для выполнения группировки и построения графика с помощью pandas DataFrame:
Метод 1: группировка и построение нескольких линий на одном графике
#define index column
df.set_index('day', inplace= True )
#group data by product and display sales as line chart
df.groupby('product')['sales'].plot(legend= True )
Метод 2: группировка по и сюжетным линиям в отдельных подзаговорах
pd.pivot_table(df.reset_index(),
index='day', columns='product', values='sales '
).plot(subplots= True )
В следующем примере показано, как использовать каждый метод на практике со следующими пандами DataFrame:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'day': [1, 2, 3, 4, 5, 1, 2, 3, 4, 5],
'product': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B'],
'sales': [4, 7, 8, 12, 15, 8, 11, 14, 19, 20]})
#view DataFrame
df
day product sales
0 1 A 4
1 2 A 7
2 3 A 8
3 4 A 12
4 5 A 15
5 1 B 8
6 2 B 11
7 3 B 14
8 4 B 19
9 5 B 20
Метод 1: группировка и построение нескольких линий на одном графике
В следующем коде показано, как сгруппировать DataFrame по переменной «продукт» и отобразить «продажи» каждого продукта на одной диаграмме:
#define index column
df.set_index('day', inplace= True )
#group data by product and display sales as line chart
df.groupby('product')['sales'].plot(legend= True )

По оси X отображается день, по оси Y — продажи, а в каждой отдельной строке — продажи отдельных продуктов.
Метод 2: группировка по и сюжетным линиям в отдельных подзаговорах
В следующем коде показано, как сгруппировать DataFrame по переменной «продукт» и отобразить «продажи» каждого продукта на отдельных подграфиках:
pd.pivot_table(df.reset_index(),
index='day', columns='product', values='sales '
).plot(subplots= True )

Первый график показывает продажи продукта А, а второй график показывает продажи продукта Б.
Обратите внимание, что мы также можем использовать аргумент макета , чтобы указать макет подграфиков.
Например, мы могли бы указать, что подграфики должны находиться в сетке с одной строкой и двумя столбцами:
pd.pivot_table(df.reset_index(),
index='day', columns='product', values='sales '
).plot(subplots= True , layout=(1,2))

Дополнительные ресурсы
В следующих руководствах объясняется, как создавать другие распространенные визуализации в pandas:
Как создать блокплот из Pandas DataFrame
Как создать круговую диаграмму из Pandas DataFrame
Как создать гистограмму из Pandas DataFrame