Presentation is loading. Please wait.

Presentation is loading. Please wait.

SHINYについて 黄研究室4年 小林賢哉.

Similar presentations


Presentation on theme: "SHINYについて 黄研究室4年 小林賢哉."— Presentation transcript:

1 SHINYについて 黄研究室4年 小林賢哉

2 SHINYとは 2012年11月に初登場 インタラクティブなWebアプリケーションを Rで手軽に作れるRのライブラリ

3 サンプル http://shiny.rstudio.com/gallery/kmeans-example.html 他にも色々見たい場合

4 作ってみよう!!! Rstudioを起動 「New Project」→「New Directory」 →「Shiny Web Application」 名前は適当で、「Create Project」 既にコードは書かれてるので起動してみよう!!!

5 解説:ファイル Server.R →パソコンで処理する部分。 出力に関することはこちらに Ui.R
→パソコンで処理する部分。   出力に関することはこちらに Ui.R →インターフェースのレイアウトを調整する。 ファイル名はこのままでないと動かない この2つがあって初めて動く

6 解説:レイアウト Ui.R → shinyUI(fluidPage( ← レイアウトの設定 他にも色々あるよ!!!

7 解説:レイアウト titlePanel mainPanel sidebarPanel

8 解説:ソースコード(ui.R) ()の中で、次に行く時は、「,」を忘れない titlePanel sidebarPanel
shinyUI(fluidPage(   ページの設定 titlePanel("Old Faithful Geyser Data"), sidebarLayout( sidebarPanel( sliderInput(“bins”,   引数 “Number of bins:”,  ラベル              min = 1,        最小の値 max = 50,       最大値 value = 30)      最初の値 ),    mainPanel( plotOutput("distPlot") ) )) ()の中で、次に行く時は、「,」を忘れない titlePanel sidebarPanel スライドバーのインプットについて mainPanel 出力について書いている

9 解説:ソースコード(server.R) shinyServer(function(input, output) {
Render*→リアルタイムな出力に対して       ウィジェットの値が変わった       時、実行される。 Output$*→ui.Rで書いたものに対応 Input$*→ウィジェットの値に対応 R言語を普通に書き込める!!! shinyServer(function(input, output) { output$distPlot <- renderPlot({ x <- faithful[, 2] bins <- seq(min(x), max(x), length.out = input$bins + 1) hist(x, breaks = bins, col = 'darkgray', border = 'white') }) 出力について: ヒストグラムについて 書いている

10 つまりぃ・・・ Ui.R server.R shinyServer(function(input, output) {
shinyUI(fluidPage( titlePanel("Old Faithful Geyser Data"), sidebarLayout( sidebarPanel( sliderInput("bins", “Number of bins:”,                min = 1, max = 50, value = 30) ),    mainPanel( plotOutput("distPlot") ) )) shinyServer(function(input, output) { output$distPlot <- renderPlot({ x <- faithful[, 2] bins <- seq(min(x), max(x), length.out = input$bins + 1) hist(x, breaks = bins, col = 'darkgray', border = 'white') })

11 もっと色々正確に知りたい!! インターフェースについて ウィジェットについて 出力について

12 問題 このようなアプリケーションをつくれ 「倍の数字」・「気分」は、ウィジェットによって、 リアルタイムに変更される。

13 ヒント 分からないことがあったら聞いてください。 答えられる範囲で答えます。
 とはいいません!!!   スライドに書かれてない事は添付したURLの内容を参考に!!! 分からないことがあったら聞いてください。 答えられる範囲で答えます。

14 終わった人は・・・・応用!!! 今までのプロジェクトで行った分析をWebアプリケーションにしてみよう!!!

15 Server.R # This is the server logic for a Shiny web application. # You can find out more about building applications with Shiny here: # # library(shiny) shinyServer(function(input, output) { output$text <- renderText({ paste("今の自分の気分はいつもより", input$bins ,"倍" , input$radio) })

16 # This is the user-interface definition of a Shiny web application.
# You can find out more about building applications with Shiny here: # # library(shiny) shinyUI(fluidPage( # Application title titlePanel("11月6日黄プロジェクト問題"), # Sidebar with a slider input for number of bins sidebarLayout( sidebarPanel( sliderInput("bins", "何倍?", min = 100, max = 1000, value = 500), radioButtons("radio", label = h3("気分は?"), choices = list("最高" = "最高", "早く帰りたい" = "早く帰りたい", "もう授業終われ" = "もう授業終われ"),selected = "最高") ), ui.R

17 # Show a plot of the generated distribution
mainPanel( textOutput("text") ) )) ui.R


Download ppt "SHINYについて 黄研究室4年 小林賢哉."

Similar presentations


Ads by Google