Введение
В этом уроке мы научимся создавать трехмерный график с погрешностями с использованием библиотеки Matplotlib для Python. Погрешностные полосы - это графическое представление вариабельности данных и часто используются в научных и инженерных областях для показа неопределенностей в измерениях или статистических оценках.
Советы по работе с ВМ
После запуска ВМ нажмите в левом верхнем углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.
Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook не загрузится полностью. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.
Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.
Импорт библиотек
Во - первых, нам нужно импортировать необходимые библиотеки, это Matplotlib и NumPy. NumPy - это библиотека для численного вычисления, которая обеспечивает поддержку для массивов и матриц, а Matplotlib - это библиотека для визуализации данных.
import matplotlib.pyplot as plt
import numpy as np
Создание трехмерного графика
Далее мы создаем трехмерный график, используя метод add_subplot объекта figure. Мы задаем параметр projection равным '3d', чтобы указать, что мы хотим получить трехмерный график.
ax = plt.figure().add_subplot(projection='3d')
Генерация данных для графика
Мы генерируем данные для нашего графика, создав параметрическую кривую. Параметрическая кривая - это набор уравнений, которые описывают координаты x, y и z в виде функции параметра. Мы используем функцию arange из NumPy для создания массива значений от 0 до 2π. Затем мы используем эти значения для вычисления координат x, y и z с использованием тригонометрических функций.
t = np.arange(0, 2*np.pi+.1, 0.01)
x, y, z = np.sin(t), np.cos(3*t), np.sin(5*t)
Добавление погрешностных полос на график
Мы добавляем погрешностные полосы на наш график, используя метод errorbar объекта Axes3D. Мы задаем параметры zuplims и zlolims массивами, которые определяют, какие точки данных имеют верхние и нижние пределы. Мы задаем параметр errorevery, чтобы контролировать частоту появления погрешностных полос.
estep = 15
i = np.arange(t.size)
zuplims = (i % estep == 0) & (i // estep % 3 == 0)
zlolims = (i % estep == 0) & (i // estep % 3 == 2)
ax.errorbar(x, y, z, 0.2, zuplims=zuplims, zlolims=zlolims, errorevery=estep)
Настройка графика
Мы можем настроить наш график, добавив метки к осям x, y и z с использованием методов set_xlabel, set_ylabel и set_zlabel.
ax.set_xlabel("X label")
ax.set_ylabel("Y label")
ax.set_zlabel("Z label")
Отображение графика
Наконец, мы используем метод show, чтобы отобразить наш график.
plt.show()
Резюме
В этом уроке мы узнали, как создавать трехмерный график с погрешностными полосами с использованием Matplotlib. Мы использовали NumPy для генерации данных для нашего графика и добавили погрешностные полосы с использованием метода errorbar. Мы также настроили наш график, добавив метки к осям x, y и z.