ЛР / ЛР№6_Хакова_Ю_М_ИСТ_223
.docxФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»
(СПбГУТ)
Лабораторная работа №6
«Построение веб-приложений с Shiny»
Выполнил: ст. гр. ИСТ-223 Хакова Ю. М.
Проверил: к.т.н., доцент Лабковская Р.Я.
Цель лабораторной работы: познакомиться с технологией создания
интерактивных веб-приложений с помощью пакета shiny.
Задание 1
Приложение должно выводить таблицу, построенную как
выборку из набора данных gapminder. Выборка производится в
интерактивном режиме по следующим параметрам:
1. Выбор года (переключатель) и ВВП на душу населения (слайдер).
2. Выбор континента (раскрывающийся список) и выбор годов (текстовое
поле).
3. Выбор средней продолжительности жизни (слайдер) и выбор годов
(раскрывающийся список).
Ход работы:
Подключение необходимых библиотек shiny, gapminder, и dplyr.
Создать панель интерфейса UI для ввода данных пользователем.
Переключатель для выбора года: создается с помощью radioButtons() и слайдер для выбора ВВП на душу населения: создается с помощью sliderInput().
Раскрывающийся список для выбора континента: создается с помощью selectInput() и текстовое поле для ввода годов: создается с помощью textInput(), который позволяет пользователю вводить годы через запятую.
Слайдер для средней продолжительности жизни: создается с помощью sliderInput() и раскрывающийся список для выбора годов: создается с помощью selectInput() с возможностью множественного выбора (multiple = TRUE), чтобы пользователи могли выбрать один или несколько годов для фильтрации данных.
В серверной части создать функцию renderTable(), которая фильтрует данные на основе всех входных параметров, установленных пользователем.
Результаты программы(рис. 1) представлены на рисунках 2–4.
Рис. 1. Программа для решения задания 1
Рис. 2. Выборка года (переключатель) и ВВП на душу населения (слайдер)
Рис. 3. Выборка континента (раскрывающийся список) и выбор годов (текстовое поле)
Рис. 4. Выборка средней продолжительности жизни (слайдер) и выбор годов
(раскрывающийся список)
Задание 2
С помощью пакета shiny, используя набор данных gapminder пакета
gapminder, постройте интерактивное веб-приложение, позволяющее строить
график формата ggplot, по заданным настройкам. Приложение должно
содержать минимум 3 конструкции типа input. Также необходимо оформить
приложение соответствующим образом, т.е. необходимо, чтобы каждая из
форм ввода входных данных имела соответствующую подпись, также, как и
итоговый график, формируемый приложением.
Ход работы:
Создание панели интерфейса UI для управления графиком с тремя элементами input (выбор страны, диапазон годов, диапазон продолжительности жизни), которые пользователь будет использовать для настройки отображения данных.
Создание серверной функции server, которая обрабатывает данные в соответствии с выбранными пользователем параметрами.
Добавление функции renderPlot(), которая будет генерировать график на основе отфильтрованных данных gapminder.
Выполнить построение линейного графика с помощью ggplot().
Результат программы(рис. 5) представлены на рисунке 6.
Рис. 5. Программа для решения задания 2
Рис. 2. Линейный график для отображения тенденции продолжительности жизни в зависимости от года
Вывод:
Для решения первого задания было разработано веб-приложение на основе Shiny, которое отображает отфильтрованную таблицу данных из набора gapminder. Приложение позволяет пользователю выбирать параметры для фильтрации данных, такие как год, ВВП на душу населения, континент и средняя продолжительность жизни. Благодаря использованию элементов управления и фильтрации данных на сервере пользователь может интерактивно просматривать данные, соответствующие заданным критериям.
Для решения второго задания так же было создано интерактивное веб-приложение с использованием Shiny и ggplot2, чтобы визуализировать изменения продолжительности жизни по годам для выбранной страны. Пользователь может выбирать страну, диапазон годов и диапазон значений продолжительности жизни. На основе этих параметров строится линейный график, отражающий изменение продолжительности жизни с течением времени для конкретной страны.
Санкт-Петербург
2024
