</>
Тема 1 из 5

Первый график

matplotlib — главная библиотека для построения графиков в Python. На ней основаны графики pandas и seaborn, а в научных статьях и отчётах её картинки встречаются повсюду. В этой теме — как построить и оформить простой линейный график.

Подключение

import matplotlib.pyplot as plt

pyplot — набор функций для быстрого построения графиков; сокращение plt общепринятое.

На сайте графики строятся «в памяти»: нажмите Запустить, и под выводом появится картинка. На своём компьютере, чтобы открыть окно с графиком, в конце программы вызывают plt.show(), а чтобы сохранить в файл — plt.savefig("chart.png").

Линейный график

months = [1, 2, 3, 4, 5, 6]
sales = [120, 135, 128, 160, 172, 190]

plt.plot(months, sales)

plt.plot(x, y) ставит точки (x[i], y[i]) и соединяет их линией по порядку. Списки должны быть одной длины.

Если передать только один список, он будет значениями y, а по горизонтали — номера точек 0, 1, 2, …:

plt.plot([3, 1, 4, 1, 5])

Вместо списков можно передавать массивы numpy — так удобно рисовать функции:

import numpy as np

x = np.linspace(0, 2 * np.pi, 100)
plt.plot(x, np.sin(x))

Чем больше точек, тем более гладкой выглядит кривая.

Подписи

График без подписей непонятен. Добавим заголовок и подписи осей:

plt.plot(months, sales)
plt.title("Продажи за полгода")
plt.xlabel("Месяц")
plt.ylabel("Тыс. рублей")

Цвет и стиль линии

Параметры plot:

Параметр Что задаёт Примеры
color цвет "red", "tab:blue", "#ff8800"
linestyle стиль линии "-" сплошная, "--" пунктир, ":" точки, "-."
linewidth толщина 1, 2.5
marker маркер в точках "o" кружок, "s" квадрат, "^" треугольник, "x"
markersize размер маркера 6, 10
plt.plot(months, sales, color="green", linestyle=":", linewidth=2, marker="s")

Есть и короткая запись строкой формата: plt.plot(x, y, "g:s") — зелёная точечная линия с квадратами.

Сетка и пределы осей

plt.grid(True)          # сетка
plt.xlim(0, 7)          # пределы по горизонтали
plt.ylim(0, 200)        # по вертикали
plt.xticks([1, 3, 5])   # какие отметки подписать на оси

Как проверяются задачи

В задачах этого курса программа строит график, а проверка «читает» его: какие у графика заголовок и подписи, сколько линий, какие у них точки, цвет и стиль. Поэтому важно точно выполнить требования условия: текст подписей посимвольно, точки — в правильном порядке.

Посмотреть, что получилось, можно в любой момент кнопкой Запустить.

Итог

  • import matplotlib.pyplot as plt;
  • plt.plot(x, y) — линия по точкам; один аргумент — это y;
  • plt.title, plt.xlabel, plt.ylabel — подписи;
  • color, linestyle, linewidth, marker — оформление линии; "r--o" — короткий формат;
  • plt.grid(True), plt.xlim, plt.ylim — сетка и пределы;
  • на компьютере: plt.show() — окно, plt.savefig("файл.png") — сохранение.