Что вы используете для создания панели инструментов в R?

17

Мне нужно создавать периодические (ежедневные, ежемесячные) отчеты панели инструментов веб-аналитики. Они будут статичными и не требуют взаимодействия, поэтому представьте файл PDF в качестве конечного результата. В отчетах будут смешаны таблицы и диаграммы (в основном, спарклайн и маркеры, созданные с помощью ggplot2). Подумайте об инструментальных панелях в стиле Стивена Мало / Perceptual Edge, таких как:образец приборной панели

но применяется к веб-аналитике.

Любые предложения о том, какие пакеты использовать для создания этих отчетов панели?

Моя первая интуиция - использовать R markdown и knitr, но, возможно, вы нашли лучшее решение. Я не могу найти богатых примеров панелей, созданных из R.

shadowtalker
источник
Я предлагаю заменить untaggedтег r, dashboards, reportsили аналогичный.
Александр Блех
Вы создали эту панель, как описано выше? Я хотел бы взглянуть на код!
Каре

Ответы:

15

Я думаю, что Shinyв этой ситуации это перебор, и он не соответствует вашим требованиям, предъявляемым к отчетам панели мониторинга, чтобы они были статичными . Я предполагаю, что использование вами термина «панель мониторинга» немного сбивает с толку, так как некоторые люди могут подумать, что в ней больше внимания уделяется интерактивности ( панели мониторинга в реальном времени ), а не макету информации , как я понимаю (подтверждается " статическое требование).

Я рекомендую вам использовать R Markdown и knitr , тем более что эти пакеты имеют гораздо меньшую кривую обучения, чем Shiny . Более того, я недавно натолкнулся на пакет R, который, на мой взгляд, идеально подходит для вашего требования о включении небольших диаграмм / графиков в отчет, как показано на вашей картинке выше. Этот пакет генерирует статические или динамические графические таблицы и называется sparkTable ( http://cran.r-project.org/web/packages/sparkTable ). Его виньетка доступна здесь (на домашней странице пакета нет ссылки): http://publik.tuwien.ac.at/files/PubDat_228663.pdf . Если вам когда-нибудь понадобится интерактивность ,sparkTableпредоставляет некоторые через его простой интерфейс Shiny.

Александр Блех
источник
Я не знал о sparkTable, похоже, отличный инструмент для работы.
Shadowtalker
@ssdecontrol: До недавнего времени я тоже не знал об этом. Похоже, отличный инструмент, конечно. Я с нетерпением жду возможности попробовать это в своем проекте, если у меня возникнет необходимость и возможность.
Александр Блех
9

Shiny - это платформа для генерации приложений на основе HTML, которые динамически выполняют R-код. Блестящие приложения могут быть автономными или встроенными в документы Markdown knitr, а разработка Shiny полностью интегрирована в RStudio. Существует даже бесплатный сервис shinyapps.io для размещения приложений Shiny, в shinyпакете есть функции для развертывания приложений Shiny непосредственно из R, а RStudio имеет графический интерфейс для вызова этих функций. В разделе «Учебное пособие» сайта можно найти больше информации.

Поскольку он по сути «компилирует» все это в JavaScript и HTML, вы можете использовать CSS, чтобы свободно изменять форматирование и макет, хотя Shiny имеет для этого неплохую функциональность обертки. Но так уж получилось, что их цветовая схема по умолчанию похожа на ту, что вы выложили на скриншоте.

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

shadowtalker
источник
2

Я нашел вариант Flex Dashboard довольно крутым, интерактивным и простым в использовании. Попробуйте, может быть, вы тоже.

Между тем, вы также можете попробовать это.

Надеюсь, это поможет! (Обновите меня, если вы получите что-то даже лучше, чем это.)

Абхишек Джайсвал
источник
1

Я должен был создать веб-панель управления. Мой основной инструмент для построения графиков был d3js. Но мне нужно было использовать ggplot2 для генерации нескольких графиков. Через расширение ggplot2 от d3js я мог создать то же самое. Если ваши диаграммы могут быть сгенерированы с помощью существующего расширения, то у Интернета есть лучшие альтернативы. Позже вы можете экспортировать их в PDF для распространения.

Викрам
источник
1

Вы можете попробовать ShinyDashboard и пропустить любые интерактивные аспекты. По моему мнению, все еще приятно позволить пользователям увеличивать графики или искать определенные значения в столбце. Блестящий позволит вам сделать это.

Стерео
источник