R Shiny Tutorial: как создавать интерактивные веб-приложения в R

Опубликовано: 2020-03-16

Оглавление

Введение

В эту современную технологическую эпоху для всех нас доступны различные приложения — от отслеживания нашего уровня физической подготовки, сна до предоставления нам самой последней информации о фондовых рынках. Такие приложения, как Robinhood, Google Fit и Workit, кажутся удивительно полезными, потому что они используют данные и статистику в реальном времени. Поскольку R является лидером в области статистических вычислений и программирования, разработчикам нужна система, позволяющая использовать его возможности для создания приложений. Узнайте больше о программировании на R.

Вот где R Shiny приходит, чтобы спасти положение. В этом руководстве по R Shiny вы познакомитесь с основами.

Что такое Р Шайни?

Shiny — это пакет R, разработанный для создания интерактивных веб-приложений в R. Используя это, вы можете создавать веб-приложения, используя собственный код HTML и CSS вместе с кодом R Shiny. Вы можете создавать автономные веб-приложения на веб-сайте, которые упростят визуализацию данных. Эти приложения, созданные с помощью R Shiny, могут беспрепятственно отображать объекты R, такие как таблицы и графики.

Давайте посмотрим на некоторые особенности R Shiny:

  • Создавайте веб-приложения с меньшим количеством строк кода и без JavaScript.
  • Эти приложения работают и доступны для пользователей, как и электронные таблицы. Выходы могут изменяться в режиме реального времени, если пользователи меняют ввод.
  • Разработчики, мало знакомые с веб-инструментами, также могут создавать приложения с помощью R Shiny.
  • Вы получаете встроенные виджеты для отображения таблиц, результатов объектов R и графиков.
  • С помощью этого пакета вы можете добавлять живые визуализации и отчеты в веб-приложение.
  • Пользовательские интерфейсы могут быть написаны на R или подготовлены с использованием HTML, CSS или JavaScript.
  • Пользовательский интерфейс по умолчанию построен с использованием Bootstrap.
  • Он поставляется с пакетом WebSocket, который обеспечивает быструю связь между веб-сервером и R.

Читайте: Дерево решений в R

Компоненты приложения R Shiny

Приложение Shiny состоит из двух основных компонентов — объекта пользовательского интерфейса и функции сервера. Это аргументы, которые передаются методу ShinyApp . Этот метод создает объект приложения, используя аргументы.

Изучайте науку о данных в лучших университетах мира. Участвуйте в программах Executive PG, Advanced Certificate Programs или Master Programs, чтобы ускорить свою карьеру.

Читайте также: Алгоритм KNN в R

Давайте подробно разберем основные части приложения R Shiny :

Функция пользовательского интерфейса

Эта функция определяет внешний вид веб-приложения. Это делает приложение интерактивным, получая ввод от пользователя и отображая его на экране. Теги HTML и CSS могут использоваться для улучшения внешнего вида приложения. Итак, при создании файла ui.R вы создаете файл HTML с функциями R.

Если вы наберете FluidPage() в консоли R, вы увидите, что метод возвращает тег <div class="container-fluid"></div>.

Различные входные функции:

  • selectInput () — этот метод используется для создания раскрывающегося HTML-кода с различными вариантами выбора.
  • numericInput () — этот метод создает область ввода для ввода текста или чисел.
  • radioButtons () — предоставляет пользователю радиокнопки для выбора входа.

Методы компоновки

Различные функции макета, доступные в Bootstrap, реализованы R Shiny. Компоненты:

Панели

Это методы, которые группируют элементы в одну панель. Это включает:

  • абсолютная панель()
  • панель ввода()
  • условная панель ()
  • панель заголовка ()
  • фиксированная панель ()

Функции макета

Они организуют панели для определенного макета. Это включает:

  • флюидРоу()
  • вертикальный макет ()
  • потокМакет()
  • разделитьмакет()
  • боковая панельLayout ()

Методы вывода

Эти методы используются для отображения изображений, таблиц и графиков выходных компонентов R. Они есть:

  • tableOutput() — этот метод используется для отображения таблицы R.
  • plotOutput() — этот метод используется для отображения объекта графика R.

Функция сервера

После того, как вы создали внешний вид приложения и способы получения входных значений от пользователя, пришло время настроить сервер. Серверные функции помогают вам написать серверный код для приложения Shiny. Вы можете создавать функции, которые сопоставляют входные данные пользователя с соответствующими выходными данными. Эта функция вызывается веб-браузером при загрузке приложения.

Он принимает входной и выходной параметры, а возвращаемые значения игнорируются. Этот метод также принимает необязательный параметр сеанса.

Учебное пособие по R Shiny: как начать работу с R Shiny?

Шаги для начала работы с пакетом R Shiny следующие:

  • Перейдите в консоль R и введите команду – install.packages («блестящие»)
  • Пакет поставляется с 11 встроенными примерами приложений, чтобы вы могли понять, как работает Shiny.

Вы можете начать с примера Hello Shiny , чтобы понять базовую структуру. Введите этот код, чтобы запустить Hello Shiny:

библиотека (блестящая)

runExample("01_hello")

Шаги для создания нового приложения Shiny:

  • Откройте RStudio и перейдите к опции «Файл».
  • Выберите «Новый проект» в каталоге и щелкните приложение «Shiny Web».
  • Вы получите гистограмму и ползунок для проверки изменений вывода по отношению к вводу.
  • Вы получите два скрипта ui.R и server.R для написания кода и настройки приложения

Советы по разработке приложений Shiny

  • Протестируйте приложение в браузере, чтобы увидеть, как оно выглядит, прежде чем отправлять его в производство.
  • Запустите весь скрипт во время отладки приложения
  • Будьте осторожны с распространенными ошибками, такими как запятые

Заключение

Если вам интересно узнать о науке о данных, ознакомьтесь с нашей программой Executive PG по науке о данных , которая создана для работающих профессионалов и предлагает более 10 тематических исследований и проектов, практические практические семинары, наставничество с отраслевыми экспертами, 1-на-1 с отраслевыми наставниками, более 400 часов обучения и помощи в трудоустройстве в ведущих фирмах.

Лучшая часть Shiny заключается в том, что вам не нужно знать HTML, CSS или JavaScript для его использования. Кроме того, вы можете создавать приложения и развертывать их в бесплатной версии ShinyApps.io. Держите это руководство по R Shiny под рукой, пока не начнете работу.

Каковы преимущества R Shiny?

Каждому специалисту по данным необходимо воспользоваться помощью определенных инструментов, чтобы донести информацию из данных до широкой публики. Shiny — это пакет, доступный в R, для разработки интерактивных веб-приложений. Вы получаете множество вариантов для сообщения результатов с помощью текстов, таблиц, визуализаций или интерактивных диаграмм. Если вы знаете программирование на R, вы можете легко разработать приложение, поскольку Shiny довольно прост в использовании. Есть встроенные возможности, позволяющие легко делиться своей работой с друзьями и коллегами. Дизайн приложения Shiny довольно удивителен. Даже если вы посмотрите на дисплей по умолчанию, вы найдете его довольно интуитивно понятным и элегантным.

Чем отличается Shiny от традиционных приложений?

Давайте лучше разберемся в этом на примере погодного приложения. Всякий раз, когда пользователь перезагружает страницу или даже изменяет небольшой ввод на странице, приложению придется обновить всю страницу с помощью JS. Это добавит большую нагрузку на серверную часть для обработки обновления.

С другой стороны, Shiny изолирует или перезагружает элементы приложения, что снижает нагрузку на сервер. Структура будет играть очень важную роль в понимании и отладке кода. Обнаружено, что прокрутка веб-приложений в приложениях Shiny немного затруднена по сравнению с традиционными приложениями.

Трудно ли научиться R Shiny?

Платформа Shiny — это пакет, доступный в R, который полезен для создания интерактивных веб-приложений. Пакет прекрасен тем, что позволяет создавать высокоэффективные визуализации и отчеты на основе доступных наборов данных. Помимо использования элементов Shiny, вы также можете использовать элементы HTML для настройки содержимого приложения.

Несмотря на то, что Shiny — довольно мощный инструмент, вы обнаружите, что его довольно легко освоить, если вы знакомы с программированием на R. Настоятельно рекомендуется изучить R Shiny, если вы думаете о добавлении чего-то творческого в свое портфолио.