Пакет Sketch в программировании на R

Опубликовано: 17 Февраля, 2022

Пакеты в R-программировании представляют собой набор R-функций, скомпилированного кода и примеров данных. Они хранятся в каталоге под названием « библиотека » в среде R. По умолчанию R устанавливает набор пакетов во время установки. Один из самых важных пакетов в R - это пакет Esquisse. Пакет Esquisse помогает исследовать и визуализировать ваши данные в интерактивном режиме. Это блестящий гаджет для интерактивного создания диаграмм ggplot с помощью перетаскивания для сопоставления переменных. Можно быстро визуализировать данные в соответствии с их типом, экспортировать в «PNG» или «PowerPoint» и получить код для воспроизведения диаграммы.

Установка

Чтобы использовать пакет в программировании на R, необходимо сначала установить пакет. Эту задачу можно выполнить с помощью команды install.packages («packagename») .

 источник ("https://install-github.me/dreamRs/esquisse")
install.packages ("esquisse")

Чтобы установить версию для разработки с GitHub, введите следующее:

 # или с помощью инструментов разработчика:
devtools :: install_github ("dreamRs / esquisse")

Важные глагольные функции в пакете Esquisse

  • chooseData-Module: это модуль для выбора data.frame из пользовательской среды и выбора переменной для использования. Это дает пользователю возможность выбрать из заданного списка доступных наборов данных для работы в блестящем приложении.

Syntax: 

chooseDataUI(id)

chooseDataServer(input, output, session, data = NULL, name = NULL,

                            selectVars = TRUE, launchOnStart = TRUE, defaultData = NULL)

Параметр

Описание

я бы Идентификатор модуля.
Вход Стандартный блестящий ввод.
выход Стандартный блестящий выход.
сессия Стандартный сеанс сияния.
данные data.frame для использования по умолчанию.
имя Имя данных.
selectVars Логический (ИСТИНА / ЛОЖЬ), отображение меню для выбора переменных для использования в выбранном кадре данных.
launchOnStart Запускать модальное окно при запуске приложения.
defaultData

Вектор символов data.frames для выбора, если есть

нет data.frames в глобальной среде.

По умолчанию используются data.frames из ggplot2.



Example: 

R

# Import shiny and
# esquisse packages
library(shiny)
library(esquisse)
  
ui <- fluidPage(
  tags$h2("Choose data module"),
  fluidRow(
    column(
      width = 4, tags$h4("Default"),
      # Using chooseDataUI       
      chooseDataUI(id = "choose1"),
      verbatimTextOutput(outputId = "res1"))))
  
server <- function(input, output, session) 
{
  res_dat1 <- callModule(
    chooseDataServer, id = "choose1",
    launchOnStart = FALSE)
  output$res1 <- renderPrint({
    str(reactiveValuesToList(res_dat1))})
}
  
shinyApp(ui,server)

Выход:

  • dragulaInput: он создает виджет ввода с перетаскиванием. Можно выбрать разные метки (данные) из множества меток, предоставленных разработчиком пользователю приложения, чтобы вращать их с помощью простого перетаскивания макетов.

Syntax: dragulaInput(inputId, sourceLabel, targetsLabels, targetsIds = NULL,

                                  choices = NULL, choiceNames = NULL, choiceValues = NULL,

                                  status = “primary”, replace = FALSE, badge = TRUE, width = NULL,

                                 height = “200px”)

Параметр

Описание

inputId Входной слот, который будет использоваться для доступа к значению.
sourceLabel Ярлык отображается в окне источника.
TargetLabels Ярлыки для каждого целевого элемента.
targetIds Идентификаторы для получения значений на стороне сервера.
выбор

Список значений для выбора. Если этот аргумент предоставлен,

тогда choiceNames и choiceValues указывать нельзя,

наоборот.

choiceNames

Список отображаемых имен и значений соответственно

пользователю в приложении и соответствовать

к каждому выбору (по этой причине choiceNames и

choiceValues должны иметь одинаковую длину).

choiceValues

Список отображаемых имен и значений соответственно

пользователю в приложении и соответствовать

к каждому выбору (по этой причине choiceNames

и choiceValues должны иметь одинаковую длину).

положение дел

Если варианты отображаются в ярлыке Bootstrap, вы

можно использовать статус Bootstrap, чтобы раскрасить их, или NULL.

заменять

Когда выбор уже перетаскивается в целевой контейнер

содержащий выбор, заменяется ли последний на новый? # '

значок Отображает варианты выбора внутри значка Bootstrap.
ширина Ширина входа.
рост Высота каждого поля, общая высота ввода - это параметр X 2.

Example:

R

# Import shiny and
# esquisse packages
library("shiny")
library("esquisse")
  
ui <- fluidPage(
  tags$h2("dragulaInput demo for geeksforgeeks"),
  tags$br(),
  # using dragulaInput()
  # to create a drag and
  # drop widget
  dragulaInput(
    inputId = "data_di", sourceLabel = "Source",
    targetsLabels = c("Drop Here", "Drop Here 2"),
    choices = names(rock), width = "400px"),
    verbatimTextOutput(outputId = "result"))
  
server <- function(input, output, session) 
{
  output$result <- renderPrint(str(input$data_di))
}
  
shinyApp(ui = ui, server = server)

Выход:

  • esquisser: это надстройка для простого создания графиков с помощью ggplot2. ggplot2 - это система декларативного создания графики. Просто предоставьте данные, скажите ggplot2, как сопоставлять переменные с эстетикой, какие графические примитивы использовать, и он сам по себе берет все свои ручки.

Syntax: esquisser(data = NULL)

Параметр

Описание

данные Data.frame.

Example:

R

# Import shiny and
# esquisse packages
library("shiny")
library("esquisse")
    
esquisser(rock)

Выход:

  • updateDragulaInput: обновить ввод Dragula. Он обновляет виджеты перетаскивания, как только вызов передается в функцию. Например, если метка перетаскивается из входа, функция обновляет набор предоставленных входных значений в выходных данных.

Syntax: updateDragulaInput(session, inputId, choices = NULL, choiceNames = NULL,

                                              choiceValues = NULL, badge = TRUE, status = “primary”)

Параметр

Описание

сессия Объект сеанса передан в функцию, переданную в shinyServer.
inputId Идентификатор входного объекта.
выбор

Список значений для выбора. Если этот аргумент указан, то choiceNames

и choiceValues указывать нельзя, и наоборот

choiceNames

choiceValues

Список имен и значений, соответственно, которые отображаются пользователю в приложении и соответствуют

к каждому варианту выбора (по этой причине имена выбора и значения выбора должны иметь одинаковую длину).

Если предоставлен один из этих аргументов, необходимо указать другой и не следует указывать варианты выбора.

значок Отображает варианты выбора внутри значка Bootstrap.
положение дел Если варианты отображаются на значке Bootstrap, вы можете использовать статус Bootstrap, чтобы раскрасить их, или NULL.

Example:

R

# Import shiny and
# esquisse packages
library("shiny")
library("esquisse")
  
ui <- fluidPage(
  tags$h2("GfG demo for Update dragulaInput"),
  radioButtons(
    inputId = "update", label = "Dataset",
    choices = c("iris", "rock")),
  tags$br(),
  dragulaInput(
    inputId = "data", sourceLabel = "Variables",
    targetsLabels = c("X", "Y", "fill", "color", "size"),
    choices = names(iris), replace = TRUE,
    width = "400px", status = "success"),
    verbatimTextOutput(outputId = "result"))
  
server <- function(input, output, session) 
{
  output$result <- renderPrint(str(input$data))
  observeEvent(input$update, {
    if (input$update == "iris"
    {
      updateDragulaInput(
        session = session, inputId = "data"
        choices = names(iris), status = "success")
    
    else 
    {
      updateDragulaInput(
        session = session, inputId = "data"
        choices = names(rock))
    }
  }, ignoreInit = TRUE)
    
}
  
shinyApp(ui, server)

Выход:

  • ggplot_to_plot: Утилита для экспорта объектов ggplot в PowerPoint. Эта служебная функция обеспечивает простой способ сохранения графиков и моделей, созданных с помощью ggplot, в файл .ppt или просто в презентацию PowerPoint.

Syntax: ggplot_to_ppt(gg = NULL)

Параметр

Описание

gg персонаж. Имя (а) объекта (ов) ggplot, если NULL, запускает гаджет Shiny.

Example:

R

# import ggplot2 library
library(ggplot2)
p <- ggplot(iris) + 
     geom_point(aes(Sepal.Length, Sepal.Width))
  
# use ggplot_to_plot
# to display plot 
# in a ppt format
ggplot_to_ppt("p")

Выход:

Код отображает вывод в формате ppt. Вывод к приведенному выше фрагменту кода можно увидеть по этой ссылке.