Практическое занятие №55 (1И)
Тема: Основные виды графиков
Цель работы: формирование теоретических и практических навыков работы на языке программирования Python
Оборудование: компьютер с установленной операционной системой Windows, подключение к сети Интернет
Время работы 2 часа
Ход работы
Задание 1.
import numpy as np
from matplotlib import pyplot as plt
x = np.linspace(0, 2, 100) # Sample data.
plt.figure(figsize=(5, 2.7), layout='constrained')
plt.plot(x, x, label='linear') # Plot some data on the (implicit) axes.
plt.plot(x, x**2, label='quadratic') # etc.
plt.plot(x, x**3, label='cubic')
plt.xlabel('x label')
plt.ylabel('y label')
plt.title("Simple Plot")
plt.legend()
Задание 2.
import numpy as np
from matplotlib import pyplot as plt
# генерация данных
omega = 8 * np.pi
t = np.linspace(0, 1, 300)
x = t * np.cos(omega * t)
y = t * np.sin(omega * t)
z = t
# параметры
small_fontsize = 18
medium_fontsize = 20
large_fontsize = 22
# создание `figure`
fig = plt.figure(figsize=(14, 7))
# настройка `figure`
fig.suptitle("Структура графиков в Matplotlib", size=large_fontsize)
fig.set_tight_layout(True)
# создание `axes` на левой половине и правой половине `figure`
left_axes = fig.add_subplot(1, 2, 1)
right_axes = fig.add_subplot(1, 2, 2, projection="3d")
# построение и настройка графика в `axes` на левой половине `figure`
line_2D, = left_axes.plot(x, y)
line_2D.set_label("Спираль, вид сверху")
line_2D.set_color("red")
# настройка `axes` в левой половине `figure`
left_axes.xaxis.set_label_text("$x$", size=small_fontsize)
left_axes.yaxis.set_label_text("$y$", size=small_fontsize)
left_axes.set_title("2D", size=medium_fontsize)
left_axes.legend(fontsize=small_fontsize)
left_axes.grid()
# построение и настройка графика в `axes` на правой половине `figure`
line_3D, = right_axes.plot(x, y, z)
line_3D.set_label("Спираль")
line_3D.set_color("red")
# настройка `axes` в левой половине `figure`
right_axes.xaxis.set_label_text("$x$", size=small_fontsize)
right_axes.yaxis.set_label_text("$y$", size=small_fontsize)
right_axes.zaxis.set_label_text("$z$", size=small_fontsize)
right_axes.set_title("3D", size=medium_fontsize)
right_axes.legend(fontsize=small_fontsize)
Задание 3
import matplotlib.pyplot as plt
# данные для диаграммы
sales = [75, 15, 5, 5]
labels = ['Продукты', 'Одежда', 'Электроника', 'Другое']
# создание круговой диаграммы
plt.pie(sales, labels=labels, autopct='%1.1f%%')
# отображение диаграммы
plt.show()