График Matplotlib

scatter_default_arguments Изучение

В этой статье мы собираемся объяснить, как использовать функцию построения графика в Python.

График широко используется аналитиками данных для выяснения взаимосвязи между двумя наборами числовых данных. В этой статье мы увидим, как использовать matplotlib.pyplot для рисования линейной диаграммы. Эта статья предоставит вам полную информацию, необходимую для работы с функцией построения графика.

Matplotlib.pypolt предлагает различные способы построения графика. Чтобы построить график в виде линейной диаграммы, мы используем функцию plot ().

Синтаксис:

import matplotlib.pyplot as plt

plt.plot(x, y)

Здесь x принадлежит оси x, а y принадлежит оси y.

Примеры

Пример 1: построение линейной диаграммы с параметрами по умолчанию

В этом примере мы собираемся нарисовать линейную диаграмму, используя настройки matplotlib.pyplot по умолчанию. Мы просто создаем две точки данных (X и Y) и строим график, как показано ниже. Этот простой пример поможет вам понять линейный график. Данные, которые мы создали здесь, объясняют, как количество сотрудников увеличивается каждый год с 2011 по 2016 год. Мы можем видеть прямо из данных, но та же информация будет отображаться на линейной диаграмме.

# line_chart_with_default_settings.py

# import the required library

import matplotlib.pyplot as plt

# X and Y data

numberofemp = [13, 200, 250, 300, 350, 400]

year = [2011, 2012, 2013, 2014, 2015, 2016]

# plot a line chart

plt.plot(year, numberofemp)

plt.show()

Вывод : python line_chart_with_default_settings.py

Строки с 3 по 8 : мы импортируем необходимую библиотеку и создаем два списка для X и Y. Номер списка представляет ось X, а год списка представляет ось Y.

Строки с 11 по 12 : мы передаем эти параметры X и Y функции построения графика, а затем строим линейный график.

мы передаем эти параметры X и Y функции построения графика, а затем строим линейный график

Пример 2: Добавление названий меток вдоль оси

В этом примере мы собираемся изменить некоторые настройки по умолчанию. В предыдущем примере, если мы видим график графика, то трудно понять, что график пытается сказать, потому что нет информации о данных по оси x или оси y. Кроме того, мы не можем увидеть, где на графике находятся фактические данные. Итак, мы собираемся добавить маркеры, чтобы увидеть точки данных на графике вместе с метками.

Список маркеров, которые мы можем использовать, приведен ниже:

marker symbol description
“.” point
“,” pixel
“o” circle
“v” triangle_down
“^” triangle_up
“<“ triangle_left
“>” triangle_right
“1” tri_down
“2” tri_up
“3” tri_left
“4” tri_right
“8” octagon
“s” square
“p” pentagon
“P” plus (filled)
“*” star
“h” hexagon1
“H” hexagon2
“+” plus
“x” x
“X” x (filled)
“D” diamond
“d” thin_diamond
“|” vline
“_” hline
0(TICKLEFT) tickleft
1(TICKRIGHT) tickright
2(TICKUP) tickup
3(TICKDOWN) tickdown
4(CARETLEFT) caretleft
5(CARETRIGHT) caretright
6(CARETUP) caretup
7(CARETDOWN) caretdown
8(CARETLEFTBASE) caretleft (centered at base)
9(CARETRIGHTBASE) caretright (centered at base)
10(CARETUPBASE) caretup (centered at base)
11(CARETDOWNBASE) caretdown (centered at base)
“None”,””or”” nothing
‘$…$’ Render the string using mathtext. E.g., “$f$” for marker showing the letterf.
verts A list of (x, y) pairs used for Path vertices. The center of the marker is located at (0, 0) and the size is normalized, such that the created path is encapsulated inside the unit cell.

# linechart_labels_marker.py

# import the required library

import matplotlib.pyplot as plt

# X and Y data

numberofemp = [13, 200, 250, 300, 350, 400]

year = [2011, 2012, 2013, 2014, 2015, 2016]

# plot a line chart

plt.plot(year, numberofemp,marker=«o»)

# set label name of x-axis title

plt.xlabel(«Year»)

# set label name of x-axis title

plt.ylabel(«Number of Employees»)

# set label name of chart title

plt.title(«Number of Employee V/s Year Growth»)

plt.show()

Вывод : python linechart_labels_marker.py

Строка 11 : Мы добавляем еще один параметр в маркер функции построения графика. Маркер будет использоваться для отображения точек данных на графике. Для подтверждения предоставленных данных доступно несколько маркеров.

Строки с 13 по 19 : мы устанавливаем имена меток по оси x, оси y вместе с названием заголовка диаграммы.

Пример 3

Функция построения графика имеет одну концепцию форматирования строк, синтаксис которой выглядит следующим образом:

‘[marker][line][color]’

В приведенном выше синтаксисе первое представляет значение маркера, второе представляет тип линии, а последнее значение представляет цвет. Итак, мы собираемся использовать эту опцию формата строки в этом примере.

# linechart_formattingString.py

# import the required library

import matplotlib.pyplot as plt

# X and Y data

numberofemp = [13, 200, 250, 300, 350, 400]

year = [2011, 2012, 2013, 2014, 2015, 2016]

# plot a line chart

plt.plot(year, numberofemp,«o-r»)

# set label name of x-axis title

plt.xlabel(«Year»)

# set label name of x-axis title

plt.ylabel(«Number of Employees»)

# set label name of chart title

plt.title(«Number of Employee V/s Year Growth»)

plt.show()

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

Вывод : python linechart_formattingString.py

Мы также можем изменить значение формата строки по нашему выбору. Итак, мы снова собираемся использовать форматирование строки, но с другими значениями:

# linechart_formattingString.py

# import the required library

import matplotlib.pyplot as plt

# X and Y data

numberofemp = [13, 200, 250, 300, 350, 400]

year = [2011, 2012, 2013, 2014, 2015, 2016]

# plot a line chart

plt.plot(year, numberofemp,«*—b»)

# set label name of x-axis title

plt.xlabel(«Year»)

# set label name of x-axis title

plt.ylabel(«Number of Employees»)

# set label name of chart title

plt.title(«Number of Employee V/s Year Growth»)

plt.show()

Строка 11 : Мы меняем формат строки на «* —b».

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

Пример 4: Раскрасьте линейный график

В этом примере мы собираемся изменить цвет линейного графика с помощью параметра. В предыдущих примерах мы видели эту опцию изменения цвета через форматирование строки. Однако мы также можем изменить цвет, используя параметр, как и другие параметры.

# change_colour.py

# import the required library

import matplotlib.pyplot as plt

# X and Y data

numberofemp = [13, 200, 250, 300, 350, 400]

year = [2011, 2012, 2013, 2014, 2015, 2016]

# plot a line chart

plt.plot(year, numberofemp, marker=‘D’, mfc=‘green’, mec=‘yellow’,ms=‘7’)

# set label name of x-axis title

plt.xlabel(«Year»)

# set label name of x-axis title

plt.ylabel(«Number of Employees»)

# set label name of chart title

plt.title(«Number of Employee V/s Year Growth»)

plt.show()

Строка 11 : мы передаем параметр marker = ’D’, mfc ( markerfacecolor ) зеленый цвет, mec ( markeredgecolor ) желтый и ms ( размер маркера ).

Mec ( markeredgecolor ) — это цвет за пределами точки данных. Окончательный график после запуска вышеуказанной программы будет показан ниже:

Пример 5. Построение нескольких диаграмм на одном графике при одинаковом масштабе линии

Matplotlib также поддерживает рисование нескольких диаграмм на одном линейном графике. Мы можем нарисовать тот же график, используя ось разделения. Иногда вам нужно только совместить ось x и ось y. Однако иногда нам нужно совместно использовать ось x и ось y, обе из которых зависят от типа значений, которые у нас есть. Здесь, в этом примере, у нас есть оба значения одного и того же масштаба, поэтому мы можем легко построить график друг на друге.

Мы рассмотрим оба приведенных выше сценария, чтобы лучше понять их.

# sharing_x_axis.py

# import the required library

import matplotlib.pyplot as plt

# X and Y data

numberofemp_A = [13, 200, 250, 300, 350, 400]

numberofemp_B = [10, 100, 150, 200, 250, 800]

year = [2011, 2012, 2013, 2014, 2015, 2016]

# plot a line chart

plt.plot(year, numberofemp_A, marker=‘D’, mfc=‘green’, mec=‘yellow’,ms=‘7’)

plt.plot(year, numberofemp_B, marker=‘o’, mfc=‘red’, mec=‘green’,ms=‘7’)

# set label name of x-axis title

plt.xlabel(«Year»)

# set label name of x-axis title

plt.ylabel(«Number of Employees»)

# set label name of chart title

plt.title(«Number of Employee V/s Year Growth»)

plt.legend([‘numberofemp_A’,‘numberofemp_B’])

plt.show()

Строки с 7 по 8 : мы создали два списка данных, A и B, для оси x. Но и A, и B имеют одинаковые значения по оси Y. Итак, на этом графике мы разделяем ось x только потому, что масштаб оси y для A и B одинаков.

Строки с 12 по 13 : мы просто добавили еще одну функцию построения графика с некоторыми другими параметрами.

Результат показан ниже с общей осью x.

Вывод : python sharing_x_axis.py

Пример 6: Множественный график при разных масштабах

Теперь мы собираемся построить линейный график, где у нас нет оси X в том же масштабе. Затем мы можем нанести различные масштабы оси x на левую и правую части графика, используя функцию twinx ().

# line_with_different_scale.py

# import the required library

import matplotlib.pyplot as plt

# X and Y data

numberofemp = [13, 200, 250, 300, 350, 400]

rev = [0.4, 0.6, 0.8, 0.7, 0.8, 0.9]

year = [2011, 2012, 2013, 2014, 2015, 2016]

# plot numberofemp on xaxis_1

fig, xaxis_1 = plt.subplots()

xaxis_1.plot(year, numberofemp, marker=‘D’, mfc=‘green’, mec=‘yellow’,ms=‘7’)

xaxis_1.set_xlabel(«Year»)

xaxis_1.set_ylabel(«Number of Employees»)

xaxis_1.set_title(«Number of Employee and Revenue»)

# create xaxis_2 with shared x-axis

xaxis_2 = xaxis_1.twinx()

# plot rev on xaxis_2

xaxis_2.plot(year, rev, marker=‘o’, mfc=‘red’, mec=‘green’,ms=‘7’)

xaxis_2.set_ylabel(«Rev [$M]»)

# setting the legend

fig.legend([‘Number of Employee’, ‘Rev’], loc=‘upper left’)

plt.show()

Строка 4 : Импортируем необходимую библиотеку.

Строки с 7 по 9 : мы создали три набора данных. Новый набор данных — это rev-list, который показывает доход компании. Здесь у нас разные масштабы по оси абсцисс. Затем мы можем показать разные шкалы слева и справа. Для этого мы должны использовать функцию twinx () для создания разных осей, используя одну и ту же ось x.

Строки с 12 по 16 : Мы использовали функцию plt.subplot () для создания нашей первой линейной диаграммы на графике.

Строки с 19 по 22 : мы разделили ось x с помощью функции twinx () и присвоили имя xaxis_2.

Вывод : python line_with_different_scale.py

Приведенный ниже вывод показывает две разные оси X слева и справа.

Заключение

В этой статье мы увидели, как использовать функцию построения графика для построения линейного графика. Мы объяснили все основные концепции, необходимые для рисования линейной диаграммы с помощью matplotlib. Кроме того, мы добавили ссылку GitHub для загрузки скрипта Python для этой статьи.

Читайте также:  10 лучших инструментов для менеджеров проектов в 2021 году
Оцените статью
bestprogrammer.ru
Добавить комментарий