NumPy - Matplotlib
Matplotlib - это библиотека построения графиков для Python. Он используется вместе с NumPy, чтобы предоставить среду, которая является эффективной альтернативой с открытым исходным кодом для MatLab. Его также можно использовать с наборами графических инструментов, такими как PyQt и wxPython.
Модуль Matplotlib был впервые написан Джоном Д. Хантером. С 2012 года главным разработчиком является Майкл Дроттбум. В настоящее время 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() function как значения на x axis. Соответствующие значения наy axis хранятся в другом ndarray object y. Эти значения отображаются с использованиемplot() функция подмодуля pyplot пакета matplotlib.
Графическое представление отображается show() функция.
Приведенный выше код должен дать следующий результат -
Вместо линейного графика значения можно отобразить дискретно, добавив строку формата к plot()функция. Могут использоваться следующие символы форматирования.
Sr. No. | Характер и описание |
---|---|
1 | '-' Стиль сплошной линии |
2 | '--' Стиль пунктирной линии |
3 | '-.' Штрих-пунктирная линия |
4 | ':' Пунктирная линия |
5 | '.' Маркер точки |
6 | ',' Маркер пикселей |
7 | 'o' Маркер круга |
8 | 'v' Маркер Triangle_down |
9 | '^' Маркер Triangle_up |
10 | '<' Маркер Triangle_left |
11 | '>' Треугольник_правый маркер |
12 | '1' Маркер Tri_down |
13 | '2' Маркер Tri_up |
14 | '3' Тройной левый маркер |
15 | '4' Tri_right маркер |
16 | 's' Квадратный маркер |
17 | 'p' Пентагон маркер |
18 | '*' Звездный маркер |
19 | 'h' Маркер Hexagon1 |
20 | 'H' Маркер Hexagon2 |
21 год | '+' Маркер плюс |
22 | 'x' Маркер X |
23 | 'D' Алмазный маркер |
24 | 'd' Маркер Thin_diamond |
25 | '|' Маркер Vline |
26 | '_' Маркер Hline |
Также определены следующие обозначения цветов.
символ | цвет |
---|---|
'b' | Синий |
'г' | Зеленый |
'р' | Красный |
'c' | Голубой |
'м' | Пурпурный |
'y' | Желтый |
'k' | Черный |
'w' | Белый |
Чтобы отобразить круги, представляющие точки, вместо линии в приведенном выше примере используйте “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()
Приведенный выше код должен дать следующий результат -
График синусоидальной волны
Следующий скрипт производит sine wave plot используя 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 () позволяет рисовать разные объекты на одном рисунке. В следующем сценарииsine и cosine values нанесены.
пример
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 submodule обеспечивает 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()
Этот код должен выдать следующий результат -