Имеется файл с оценками студентов по предмету «оценки.csv». Разработайте приложение, которое строит круговые диаграммы по предметам с выводом в процентном отношении количества оценок разного вида.Все диаграммы должны быть на одном слайде, но в разных областях слайда.
python
import pandas as pd
# Загрузка данных из файла
df = pd.read_csv("оценки.csv")
# Создание сводной таблицы для каждого предмета
pivot_table = df.pivot_table(index=["номер группы", "студент"],
columns="предмет",
values=["отлично", "хорошо", "удовлетворительно", "неудовлетворительно"],
aggfunc="count")
# Преобразование таблицы с количеством оценок в проценты
percentages = pivot_table / pivot_table.sum(axis=1).values.reshape(-1, 1) * 100
После получения соотношения оценок в процентах для каждого предмета можно построить круговые диаграммы и разместить их на одном слайде. Для построения круговых диаграмм будем использовать библиотеку matplotlib.
Пример кода для построения круговых диаграмм и их размещения на одном слайде:
python
import matplotlib.pyplot as plt
# Создание фигуры и областей для диаграмм
fig, ax = plt.subplots(2, 2, figsize=(10, 10))
ax = ax.flat
# Построение круговых диаграмм для каждого предмета
for i, col in enumerate(percentages.columns):
ax[i].pie(percentages[col], labels=percentages.index)
ax[i].set_title(col)
# Размещение диаграмм на одном слайде и отображение результата
plt.tight_layout()
plt.show()
В результате выполнения данного кода будет построен график, на котором будут отображены 4 круговые диаграммы, каждая соответствует одному из четырех предметов. На каждой диаграмме будут показаны процентные соотношения количества оценок разного вида (отлично, хорошо, удовлетворительно, неудовлетворительно) для каждой группы или студента.
Таким образом, разработанное приложение на языке программирования Python позволяет автоматически строить круговые диаграммы для оценок студентов по предметам с выводом в процентном отношении количества оценок разного вида с помощью библиотеки pandas и matplotlib. Полученные диаграммы помогут быстро оценить успеваемость студентов и выявить проблемные места в обучении.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет