Rで解析:Shinyのウィジットがいろいろ収録「shinyWidgets」パッケージ

Rの解析に役に立つ記事

Shinyのウィジットがいろいろと収録されているパッケージの紹介です。一覧は「shinyWidgetsGallery」コマンドを実行することで確認することができます。

本パッケージを利用することでShinyの利用に幅が広がるのではないでしょうか。実行コマンドでは収録ウィジットを利用しBoxPlotで使うデータ数を調整する例を紹介しています。

また、Shinyに関しては下記記事を参考ください。

パッケージバージョンは0.1.5。実行コマンドはwindows 11のR version 4.1.2で確認しています。

スポンサーリンク
スポンサーリンク

パッケージのインストール

下記、コマンドを実行してください。

#パッケージのインストール
install.packages("shinyWidgets")

実行コマンド

詳細はコメント、パッケージのヘルプを確認してください。

#パッケージの読み込み
library("shinyWidgets")

#パッケージに含まれている全コマンドをShinyで表示:shinyWidgetsGalleryコマンド
shinyWidgetsGallery()

###参考_dropdownButtonを利用してBoxPlotで使うデータ数を調整する#####
#パッケージの読み込み
library("shiny")
library("shinyWidgets")

###データ例の作成#####
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
  install.packages("tidyverse");require("tidyverse")
}
set.seed(1234)
TestData <- tibble(Group = sample(paste0("Group", 1:4), 50,
                                  replace = TRUE),
                   Data = sample(c(51:100), 50, replace = TRUE))
########

#UI部分を記述
ui <- fluidPage(
  tags$h2("BoxPlotの使用データ数を選択"),
  br(),
  #statusオプション:"info","primary","danger","warning","success"
  #iconコマンド:shinyパッケージに収録されているコマンドです
  #アイコンはhttps://getbootstrap.com/docs/3.3/components/#glyphiconsまたは
  #https://fontawesome.com/iconsを参照
  #詳しくは「?icon」を実行,
  dropdownButton(
    tags$h3("使用データ数を選択"),
    sliderInput(inputId = "BoxData",
                label = "BoxData",
                value = 25,
                min = 10,
                max = 50),
    circle = TRUE, status = "primary",
    icon = icon("fire"), width = "300px",
    tooltip = tooltipOptions(title = "BoxPlotの使用データ数を調整")
  ),
  br(),
  br(),
  br(),
  br(),
  br(),
  br(),
  plotOutput(outputId = "BoxPlot")
)

#server部分を記述
server <- function(input, output, session) {
  #データを抽出
  selectedData <- reactive({
    TestData %>%
      slice_sample(n = input$BoxData)
  })
  
  #BoxPlotを描写
  output$BoxPlot <- renderPlot({
    ggplot(selectedData(), aes(x = Group, y = Data, fill = Group)) +
      geom_boxplot()
  })
  
}

#Shinyの実行
shinyApp(ui = ui, server = server)

出力例

・shinyWidgetsGalleryコマンド

・参考_dropdownButtonを利用してBoxPlotで使うデータ数を調整する


少しでも、あなたの解析が楽になりますように!!

タイトルとURLをコピーしました