matplotlib
- одна из наиболее популярных библиотек для визуализации данных. Есть и другие, например: Seaborn
, plotly
и др.
Библиотека matplotlib
предлагает модуль pyplot
с набором готовых методов для построения различных типов диаграмм. Стандартное подключение данного модуля выглядит так: import matplotlib.pyplot as plt
Основные методы:
Метод plt.show()
позволяет отобразить построенную диаграмму. Поскольку Jupyter по умолчанию показывает возможный вывод, то в методе show()
зачастую нет необходимости. Но, если у вас не произошел вывод диаграммы, тогда помните об этом методе.
Кроме вывода диаграммы по умолчанию, возможно также ее дополнительно настроить: подписать оси, добавить сопроводительный текст, вывести сетку, настроить оси и т.д. Например:
Также Pandas
предлагает отдельный метод plot()
для датафрейма, который фактически является оберткой над библиотекой matplotlib
. Фактичеки часто можно не импортировать отдельно библиотеку, а сразу воспользоваться методом plot()
.
import pandas as pd
import matplotlib.pyplot as plt
plt.plot([3, 5, 10, 7, 11])
plt.plot([3, 5, 10, 7, 11], range(1, 6))
plt.plot([3, 5, 10, 7, 11])
# plt.show()
plt.plot([11, 7, 10, 5, 3])
df = pd.read_csv('city.csv', sep=';')
df.head()
data = df.groupby('CountryCode')[['Population']].sum().sort_values(by='Population', ascending=False).head(10)
data
plt.bar(data.index, data.Population)
# 1.75 * 10**8
# 1.75 * 1e8
plt.barh(data.index, data.Population)
plt.legend(['Population'])
plt.bar(data.index, data.Population)
plt.legend(['Population'])
plt.xlabel('Country')
plt.ylabel('Population')
plt.title('Top 10 country population')
plt.grid()
data.plot(kind='barh', grid=True)
data.plot(kind='pie', y='Population')
plt.pie(data.Population, labels=data.index, autopct='%1.1f%%', shadow=True)
plt.legend(data.index, loc='best', bbox_to_anchor=(1.5, 1))
plt.show()