Matplotlib — это библиотека черчения для Python. Он используется вместе с NumPy для предоставления среды, которая является эффективной альтернативой с открытым исходным кодом для MatLab. Его также можно использовать с графическими инструментами, такими как PyQt и wxPython.
Модуль Matplotlib был впервые написан Джоном Д. Хантером. С 2012 года Michael Droettboom является основным разработчиком. В настоящее время Matplotlib ver. 1.5.1 является стабильной доступной версией. Пакет доступен в бинарном выпуске, а также в форме исходного кода на сайте www.matplotlib.org .
Обычно пакет импортируется в скрипт Python путем добавления следующего оператора:
from matplotlib import pyplot as plt
Здесь pyplot () — самая важная функция в библиотеке matplotlib, которая используется для построения 2D-данных. Следующий скрипт строит уравнение y = 2x + 5
пример
import numpy as np from matplotlib import pyplot as plt x = np.arange(1,11) y = 2 * x + 5 plt.title("Matplotlib demo") plt.xlabel("x axis caption") plt.ylabel("y axis caption") plt.plot(x,y) plt.show()
Объект ndarray x создается из функции np.arange () в качестве значений на оси x . Соответствующие значения на оси y сохраняются в другом ndarray-объекте y . Эти значения выводятся с использованием функции plot () подмодуля pyplot пакета matplotlib.
Графическое представление отображается функцией show () .
Приведенный выше код должен выдать следующий результат:
Вместо линейного графика значения можно отображать дискретно, добавив строку формата в функцию plot () . Можно использовать следующие символы форматирования.
Sr.No. | Характер и описание |
---|---|
1 |
‘-‘ Стиль сплошной линии |
2 |
‘-‘ Стиль пунктирной линии |
3 |
‘-‘. Стиль штрих-пунктирной линии |
4 |
‘:’ Стиль пунктирной линии |
5 |
» Маркер точки |
6 |
» Пиксельный маркер |
7 |
«о» Маркер круга |
8 |
‘v’ Маркер треугольника вниз |
9 |
‘^’ Маркер треугольника |
10 |
‘<‘ Маркер треугольника |
11 |
‘>’ Треугольник_правильный маркер |
12 |
‘1’ Tri_down маркер |
13 |
‘2’ Маркер Tri_up |
14 |
‘3’ Маркер Tri_left |
15 |
‘4’ Tri_right маркер |
16 |
‘s’ Квадратный маркер |
17 |
‘п’ Пентагон |
18 |
‘*’ Звездный маркер |
19 |
‘час’ Hexagon1 маркер |
20 |
‘ЧАС’ Hexagon2 маркер |
21 |
‘+’ Плюс маркер |
22 |
‘Икс’ Маркер X |
23 |
‘D’ Алмазный маркер |
24 |
‘d’ Тонкий алмаз |
25 |
‘|’ Vline маркер |
26 |
‘_’ Хлайн маркер |
‘-‘
Стиль сплошной линии
‘-‘
Стиль пунктирной линии
‘-‘.
Стиль штрих-пунктирной линии
‘:’
Стиль пунктирной линии
»
Маркер точки
»
Пиксельный маркер
«о»
Маркер круга
‘v’
Маркер треугольника вниз
‘^’
Маркер треугольника
‘<‘
Маркер треугольника
‘>’
Треугольник_правильный маркер
‘1’
Tri_down маркер
‘2’
Маркер Tri_up
‘3’
Маркер Tri_left
‘4’
Tri_right маркер
‘s’
Квадратный маркер
‘п’
Пентагон
‘*’
Звездный маркер
‘час’
Hexagon1 маркер
‘ЧАС’
Hexagon2 маркер
‘+’
Плюс маркер
‘Икс’
Маркер X
‘D’
Алмазный маркер
‘d’
Тонкий алмаз
‘|’
Vline маркер
‘_’
Хлайн маркер
Следующие цветовые сокращения также определены.
символ | цвет |
---|---|
«Б» | синий |
‘г’ | зеленый |
‘р’ | красный |
«С» | Cyan |
«М» | фуксин |
«У» | желтый |
«К» | черный |
«Ш» | белый |
Чтобы отобразить круги, представляющие точки, вместо линии в приведенном выше примере используйте «ob» в качестве строки формата в plot ().
пример
import numpy as np from matplotlib import pyplot as plt x = np.arange(1,11) y = 2 * x + 5 plt.title("Matplotlib demo") plt.xlabel("x axis caption") plt.ylabel("y axis caption") plt.plot(x,y,"ob") plt.show()
Приведенный выше код должен выдать следующий результат:
Участок синусоидальной волны
Следующий скрипт создает график синусоидальной волны с помощью matplotlib.
пример
import numpy as np import matplotlib.pyplot as plt # Compute the x and y coordinates for points on a sine curve x = np.arange(0, 3 * np.pi, 0.1) y = np.sin(x) plt.title("sine wave form") # Plot the points using matplotlib plt.plot(x, y) plt.show()
подзаговор ()
Функция subplot () позволяет вам изображать разные вещи на одном рисунке. В следующем сценарии изображены значения синуса и косинуса .
пример
import numpy as np import matplotlib.pyplot as plt # Compute the x and y coordinates for points on sine and cosine curves x = np.arange(0, 3 * np.pi, 0.1) y_sin = np.sin(x) y_cos = np.cos(x) # Set up a subplot grid that has height 2 and width 1, # and set the first such subplot as active. plt.subplot(2, 1, 1) # Make the first plot plt.plot(x, y_sin) plt.title('Sine') # Set the second subplot as active, and make the second plot. plt.subplot(2, 1, 2) plt.plot(x, y_cos) plt.title('Cosine') # Show the figure. plt.show()
Приведенный выше код должен выдать следующий результат:
бар()
Подмодуль pyplot предоставляет функцию bar () для генерации гистограмм. В следующем примере создается гистограмма из двух наборов массивов x и y .
пример
from matplotlib import pyplot as plt x = [5,8,10] y = [12,16,6] x2 = [6,9,11] y2 = [6,15,7] plt.bar(x, y, align = 'center') plt.bar(x2, y2, color = 'g', align = 'center') plt.title('Bar graph') plt.ylabel('Y axis') plt.xlabel('X axis') plt.show()
Этот код должен произвести следующий вывод —