Как построить два столбца из pandas dataframe
Существует два распространенных способа отображения значений двух столбцов в DataFrame pandas:
Метод 1: отобразите два столбца как точки на диаграмме рассеяния.
import matplotlib. pyplot as plt
plt. scatter (df[' column1 '], df[' column2 '])
Способ 2. Постройте два столбца в виде линий на линейном графике.
df. plot (x=' column1 ',y=[' column2 ',' column3 '])
Следующие примеры показывают, как использовать каждый метод на практике.
Пример 1. Постройте два столбца на диаграмме рассеяния.
Предположим, у нас есть следующий DataFrame pandas, содержащий информацию о различных баскетболистах:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
' points ': [18, 22, 19, 14, 14, 11, 20, 28],
' assists ': [5, 7, 7, 9, 12, 9, 9, 4]})
#view DataFrame
print (df)
team points assists
0 to 18 5
1 B 22 7
2 C 19 7
3 D 14 9
4 E 14 12
5 F 11 9
6 G 20 9
7:28 a.m. 4
Мы можем использовать следующий код для создания диаграммы рассеяния, которая отображает столбец точек по оси X и столбец помощи по оси Y:
import matplotlib. pyplot as plt
#create scatterplot
plt. scatter (df[' points '], df[' assists '])
#add axis labels
plt. xlabel (' Points ')
plt. ylabel (' Assists ')
Ось X содержит значения из столбца очков , а ось Y содержит значения из столбца передач .
Пример 2. Построение двух столбцов на линейном графике
Предположим, у нас есть следующий DataFrame pandas, который содержит информацию о набранных и набранных очках баскетбольной командой в шести различных играх:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' game ': [1, 2, 3, 4, 5, 6],
' points_for ': [99, 94, 92, 90, 87, 85],
' points_against ': [89, 76, 78, 78, 85, 87]})
#view DataFrame
print (df)
game points_for points_against
0 1 99 89
1 2 94 76
2 3 92 78
3 4 90 78
4 5 87 85
5 6 85 87
Мы можем использовать следующий код для создания линейной диаграммы, которая отображает значения point_for в одной строке и Points_against в другой строке, используя значение игры на оси X:
#plot points_for and points_against columns on same y-axis
df. plot (x=' game ', y=[' points_for ', ' points_against '])
Синяя линия представляет значения столбца Points_for в каждой игре, а оранжевая линия представляет значения столбца Points_against в каждой игре.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:
Как использовать Groupby и Plot в Pandas
Как построить график распределения значений столбцов в Pandas
Как настроить размер фигуры на графике панды