DataFrame.plot()
Метод plot() строит график на основе данных в DataFrame или Series. Использует matplotlib как бэкенд по умолчанию и поддерживает разные типы: линия, столбцы, гистограмма, scatter.
Сигнатура
DataFrame.plot(x=None, y=None, kind="line", ax=None, figsize=None,
title=None, grid=None, legend=True, xlabel=None,
ylabel=None, **kwargs)
Параметры
x,y— столбцы для осей X и Y.kind— тип графика:"line","bar","barh","hist","box","scatter","pie","area".figsize— размер фигуры в дюймах:(width, height).title— заголовок.grid— показывать сетку.
Возвращаемое значение
Объект matplotlib.axes.Axes (или массив осей).
Примеры
Пример 1. Линейный график температуры
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({
"minute": [0, 1, 2, 3, 4],
"temp": [22.0, 22.4, 22.8, 23.1, 23.3],
})
df.plot(x="minute", y="temp", title="Температура датчика")
plt.savefig("temp.png")
# создан файл temp.png с линейным графиком
Пример 2. Столбчатая диаграмма
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({
"robot": ["P1", "P2", "P3"],
"runs": [12, 8, 15],
})
df.plot(x="robot", y="runs", kind="bar", title="Запуски роботов")
plt.savefig("runs.png")
# создан файл runs.png со столбцами
Пример 3. Несколько серий на одном графике
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({
"t": [0, 1, 2, 3],
"A": [22, 23, 23, 24],
"B": [21, 22, 23, 23],
})
df.plot(x="t", y=["A", "B"], title="Два датчика")
plt.savefig("two.png")
# на одних осях две линии A и B
Пример 4. Scatter
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({
"temp": [22, 24, 26, 28, 30],
"hum": [60, 55, 50, 45, 40],
})
df.plot(x="temp", y="hum", kind="scatter")
plt.savefig("scatter.png")
# точечный график зависимости влажности от температуры
Пример 5. Гистограмма
import pandas as pd
import matplotlib.pyplot as plt
s = pd.Series([22, 23, 22, 24, 23, 25, 22, 23, 24, 23])
s.plot(kind="hist", bins=4, title="Распределение")
plt.savefig("hist.png")
# гистограмма с 4 корзинами
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации Pandas (https://pandas.pydata.org/docs/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.