R:shiny로 웹 앱 만들기

7852 단어 RRStudio
R(RStudio)의 shiny 패키지로 web 어플 같은 것을 만들었을 때의 비망록_φ(・_・

환경


  • Mac OS X 10.12.6
  • RStudio 1.0.136

  • 준비


  • shiny 패키지 설치
  • install.packages("shiny")
    require(shiny)
    
    # URL 'https://cran.rstudio.com/bin/macosx/mavericks/contrib/3.3/shiny_1.0.5.tgz' を試しています 
    # Content type 'application/x-gzip' length 2780870 bytes (2.7 MB)
    # ==================================================
    # downloaded 2.7 MB
    
    # The downloaded binary packages are in
    #   /var/folders/t9/xk2j5yln4_dfmh518_4xvyw80000gn/T//RtmpmH3p3h/downloaded_packages
    

    그 1 : Hello Shiny!



    Shiny - Gallery , Shiny from RStudio (lesson1) 을 참고했습니다.

    여기서 하고 있는 일
  • Hello Shiny! 표시
  • 앱 화면에서 지정한 계급 히스토그램


  • lesson1.R
    library(shiny)
    
    # アプリケーションの UI 定義
    ui <- shinyUI(fluidPage(
    
      # アプリケーションタイトル
      titlePanel("Hello Shiny!"),
    
      # サイドバー
      sidebarLayout(
       # 階級数(bin)のためのスライダー
        sidebarPanel(
          sliderInput("bins",
                      "Number of bins:",
                      min = 1,
                      max = 50,
                      value = 30)
        ),
    
        # 生成された分布のプロットを表示する
        mainPanel(
          plotOutput("distPlot")
        )
      )
    ))
    
    # サーバロジックの定義。ヒストグラムを描く
    server <- shinyServer(function(input, output) {
    
      # ヒストグラムを描くための式。
      # この式は renderPlot にラップされている。つまり、
      #  1) これは "reactive" であり、入力が変更されると自動的に再実行される
      #  2) この出力タイプは plot である
    
      output$distPlot <- renderPlot({
         x    <- faithful$waiting
        bins <- seq(min(x), max(x), length.out = input$bins + 1)
    
           hist(x, breaks = bins, col = "#75AADB", border = "white",
             xlab = "Waiting time to next eruption (in mins)",
             main = "Histogram of waiting times")
      })
    })
    
    # アプリを動かす
    shinyApp(ui = ui, server = server)
    

    출력 결과



    할 수 있었습니다.

    ↓ 여가 시간에 갱신하고 싶다‥( ^ω^)↓

    2부: 대시보드 사용하기

    3: 선택한 분석 코드 실행

    좋은 웹페이지 즐겨찾기