SlideShare ist ein Scribd-Unternehmen logo
1 von 39
続・はじめてのShiny


          2013/01/26
          Tokyo.R#28
            和田 計也

サイバー系
サイバー系


     はじめに


    ※この発表は個人の見
    解であり、所属する組
    織の公式見解ではあり
    ません。
                     2
2013/01/26
サイバー系


     自己紹介
 u 和田 計也(@wdkz)
        u 静岡県袋井市出身




 u サイバー系企業でデータマイニングエンジニア職
        u 最近は奥華子ばっか聴いてます




 u 前職はバイオベンチャー
        u バイオマーカ探索してた
        u 学生時代は枯草菌の研究




                                     3
2013/01/26
サイバー系


     今日のお話

   u Shinyとは?


   u とりあえずShiny


   u Shinyアプリの配布


   u Shinyの実例




                            4
2013/01/26
サイバー系


     今日のお話

   u Shinyとは?


   u とりあえずShiny


   u Shinyアプリの配布


   u Shinyの実例




                            5
2013/01/26
サイバー系


     (いきなり脱線しますが)Mathematica 9が出ました
   u シャイニングウィザードと発音するみたいです




                                              6
2013/01/26
サイバー系


     Mathematica 9が出ました
   u        MathematicaからRを使うことで
     ➡こんなインタラクティブなのが出来るみたいです!




                                            7
2013/01/26
サイバー系


     Shiny
   u        それ出来ます、そうShinyを使えばね




         http://glimmer.rstudio.com/wdkz125/theWorld/

                                                                8
2013/01/26
サイバー系


     Shinyとは?
   u        Shinyとは、インタラクティブなWebアプリをR
             でチョー手軽に作れるRのライブラリ
              Rとnode.jsをwebsocketsで繋いでる感じ
   u        2012年11月に初登場
   u        Joe Chengさん作 (RStudio Inc.)
             UseR!2012でwebsocketsの話してた人やー




                                                    9
2013/01/26
サイバー系


     ShinyかわいいよShiny
   u        rApacheとかあったじゃん!?
              だがあれはインタラクティブではない




              それにrApacheの作者はもう飽きたらしい


                                            すまん
                                            飽きた
             UseR!2012でwebsocketsの話してた人やー




                                                      10
2013/01/26
サイバー系


     今日のお話

   u Shinyとは?


   u とりあえずShiny


   u Shinyアプリの配布


   u Shinyの実例




                            11
2013/01/26
サイバー系


     とりあえずShiny
   u        さっきの再び出します
   u        これを実際にやってみましょう




                                      12
2013/01/26
サイバー系


     Shinyでwebアプリを作る①
   u        適当なフォルダを作成
           今回の例では「01_plot」とした
   u        その中に2個のファイルを作成
             ⅰ)server.R
             ⅱ)ui.R

          上記2つのファイル名は必ず
         こうしなければいけない!!




                                        13
2013/01/26
サイバー系


     Shinyでwebアプリを作る②
   u        viewの作成はui.R
  library(shiny)
  shinyUI(pageWithSidebar(
     headerPanel("Hello Shiny!"),
     sidebarPanel(
          numericInput("obs",
                       "Number of points:",
                       1000),
          sliderInput("mean",
                     "Mean:",
                       min=-100, max=100,
                       value=0),
          sliderInput("sd",
                     "Standard Deviation:",
                       min=0, max=100, value=1)
     ),
                                                  viewは3つからなる
     mainPanel(                                   ⅰ)ヘッダー・・・タイトル
          plotOutput("distPlot")                  ⅱ)サイドバー・・・インプットのとこ
     )
                                                  ⅲ)メイン・・・アウトプットのとこ
  ))
                                                                               14
2013/01/26
サイバー系


     Shinyでwebアプリを作る③
   u        view部分ui.Rの深入り_sidebar
                                                  inputオブジェクトには固有の名前をつけておく
     sidebarPanel(                                (server.Rから入力値を取得するのに使う)
          numericInput("obs",
                       "Number of points:",
                       1000),
          sliderInput("mean",
                     "Mean:",
                       min=-100, max=100,
                       value=0),
          sliderInput("sd",
                     "Standard Deviation:",
                       min=0, max=100, value=1)
     ),

      サイドバーは、 Inputを書き足すこと
      でどんどん増やせる。 Inputに何があ
      るかはCRAN上のShinyのReference
      Manual等を見るとわかる

                                                                               15
2013/01/26
サイバー系


     Shinyでwebアプリを作る④
   u        logicの作成はserver.R
  library(shiny)                               ui.Rで定義した、アウトプットの固有名


  shinyServer(function(input, output) {
     output$distPlot <-
         reactivePlot(function() {
             dist <- rnorm(input$obs,
                           mean=input$mean,       ui.Rで定義した、インプットの固有名を
                           sd=input$sd)           使うことで値を取得できる
             hist(dist, prob=TRUE)
             lines(density(dist, adjust=2),
                   lty="dotted", col="blue")
     })
  })


       メインパネルは、server.R内で
       reactive 関数をオーバーライドするこ
       とでinteractiveな描写ができるようにな
       る。reactive 関数に何があるかは
       Reference Manual等を見るとわかる
                                                                              16
2013/01/26
サイバー系


     Shinyでwebアプリを起動する
   u        カレントフォルダに01_plotフォルダ
             があってその中にserver.Rとui.Rと
             がある状態でRコンソールから

             > library(shiny)
             > runApp(“01_plot”)


             Listening on port 8100




      デフォルトブラウザが起動




                                              17
2013/01/26
サイバー系


     今日のお話

   u Shinyとは?


   u とりあえずShiny


   u Shinyアプリの配布


   u Shinyの実例




                            18
2013/01/26
サイバー系


     Shinyアプリの配布方法_ローカル編
   u        プログラムごと渡してローカルで起動してもらう
             1.フォルダごとzipで固めて渡す。渡された人は解凍してR
       起動してshiny::runApp( hogehoge )する
       利点:最も汎用性高い
               欠点:ITリテラシーの高くない人に、Rを起動してrunApp
                  してもらうことの絶望感
             2.Gistにコードを上げて
              shiny::runGist( hogehoge )してもらう
        利点:URLを教えるだけでいいのが楽
              欠点:社外秘情報を含むものには使えないし、1同様
             3.@hoxo_mさん作成のOpenShiny.exeを使う
              利点:ITリテラシーに関係なく使ってもらえそう
              欠点:Winマシン限定。exeファイルを配布するというドキドキ感
                                                        19
2013/01/26
サイバー系


     3.OpenShiny.exeの紹介
   u        @hoxo_mさんが.netで作った「Shinyをワンクリックで起動する
             やつ」
             配布方法:適当なフォルダに①「OpenShiny.exe」
          ②「server.R」③「ui.R」を置いてフォルダごと配布
      使用方法:もらった人はOpenShiny.exeをクリックするだけ!!



                                       フォルダ名は
                                       適当なのつけてね




                                                        20
2013/01/26
サイバー系


     Shinyアプリの配布方法_サーバ編
   u        サーバにデプロイしてURLをみてもらう
             4.rApacheに組み込んじゃう
              無理



                                      即答




     5.Shinyホスティングサービス(RStudio.com運営)を使う
              楽
              β版だからいつ止まっても(有償化しても)おかしくない
              社外秘情報を含むものには使えない
             6.Shiny-serverを使ってデプロイ
              ちょい面倒だけど社内で使うならこれかな
                                                   21
2013/01/26
サイバー系


     5.RStudio.com運営shinyホスティングサービス
   u        まああれだ、ホスティング用のアカウント発行したぜ!って
             いうe-mailに書かれてる通りやればできる
             1.sshでログインして
             2.自分のホームに /ShinyApp/ディレクトリ作って
             3.そこに適当なディレクトリ(例えばtheWorld)作って
             4.scpでそこにui.Rとserver.Rをアップロード




        http://glimmer.rstudio.com/wdkz125/theWorld/
                                               ディレクトリ名
                             ユーザ名                         22
2013/01/26
サイバー系


     6.Shiny-serverについて
                http://blog.rstudio.org/2012/12/04/shiny-update/




                                                とりあえずlinux
                                                で動くけどwinと
                                                かmacosxで動
                                                かないよ

                                                オープンソースに
                                                してみたよ!!

                        有償版も考えてるらしい                                    23
2013/01/26
サイバー系


     6.Shiny-server有償版についてわかっていること




             とりあえず、有償版では何らかの認証ができたらいいな
             って思ってるらしい

                                                 24
2013/01/26
サイバー系


     6.Shiny-serverのインストール
   u        Shiny-severインストールに必要なもの
         1. R.2.15.0以上
         2. Rのshinyライブラリをユーザフォルダじゃないところに
         インストール
         3. node.js 0.8.16以上
              ubuntuの場合
   	
  	
  	
  	
  	
  	
  	
  sudo	
  apt-­‐get	
  install	
  python-­‐software-­‐properties	
  python	
  g++	
  
   	
  	
  	
  	
  	
  	
  	
  make
   	
  	
  	
  	
  	
  	
  	
  sudo	
  add-­‐apt-­‐repository	
  ppa:chris-­‐lea/node.js
   	
  	
  	
  	
  	
  	
  	
  sudo	
  apt-­‐get	
  update
   	
  	
  	
  	
  	
  	
  	
  sudo	
  apt-­‐get	
  install	
  nodejs	
  npm

   u        Shiny-severのインストール
         	
  	
  	
  	
  sudo	
  npm	
  install	
  -­‐g	
  shiny-­‐server
         	
  	
  	
  	
  sudo	
  useradd	
  -­‐r	
  shiny
         	
  	
  	
  	
  sudo	
  mkdir	
  -­‐p	
  /var/shiny-­‐server/www
         	
  	
  	
  	
  sudo	
  mkdir	
  -­‐p	
  /var/shiny-­‐server/log
                                                                                                                             25
2013/01/26
サイバー系


     6.Shiny-serverの起動
   u        以下のディレクトリに適当な名前のディレクトリ作成して
             そこにui.Rとserver.Rとをコピって
             /var/shiny-server/www/AppName
   u        起動
          sudo shiny-server
   u        ブラウザからアクセス
             http://<hostname>:3838/AppName




                                                      26
2013/01/26
サイバー系


     今日のお話

   u shinyとは?


   u とりあえずshiny


   u shinyアプリの配布


   u shinyの実例




                            27
2013/01/26
サイバー系


     shinyの実例デモ
   u デモで使うデータはもちろんiris
      irisに関する詳しい資料は以下を参照して下さい➡
             「irisの正体 (R Advent Calendar 2012 6日目)」
              http://d.hatena.ne.jp/tsutatsutatsuta/20121206/1354737461




                                                                                  28
2013/01/26
サイバー系


     shinyの利用例

                 tabで
                      いろいろ
                          選べる




                                        29
2013/01/26
サイバー系


     shinyの利用例

                 summ
                     aryの
                         tabを
                             選択す
                                ると




      もっと下のほうにsummary結果も出てるんだけど、見えんな
                                               30
2013/01/26
サイバー系


     shinyの利用例



             ここでデータのレンジを絞ると、下のグラフ中のデータポイント
                            も変化する




                                                     31
2013/01/26
サイバー系


     shinyの利用例

                 WebG
                     L使って
                         3次元p
                             lotも出
                                  来る




                                               32
2013/01/26
サイバー系


     shinyの利用例


                 決定木
                    選んで
                       みたり




                                     33
2013/01/26
サイバー系


     shinyの利用例


                 GLM選
                     んでみ
                         たり




                                      34
2013/01/26
サイバー系


     shinyの利用例




              サイド
                 バーも
             ックス     チェッ
                 オンオ     クボ
             変わる     フで動
                 よ       的に



                                      35
2013/01/26
サイバー系


     shinyのTips
   u        staticなページ(タブ)を作りたい
         HTML()関数でhtmlを直書きする
   u        インタラクティブすぎる
         submitButtonを配置すれば、ボタン押すまで反映しない
   u        サイドバーパネルもインタラクティブにしたい
             conditionalPanelを使う
             conditionalPanel(condition= input.@@=true ,,,)
   u        サイドバーパネルをもっとインタラクティブにしたい
             ui.R中はuiOutput("rice") みたいにしておいてserver.Rで
             output$rice <- reactiveUI(function(){
                  selectInput( gets , dandy , choice=1:10, selected=1)
             })
             ってすればいい。↑ここでinputの値取得して条件分岐とかバリバリ書く

                                                                             36
2013/01/26
サイバー系


     shinyのここがイマイチ
   u        日本語一切使えない。コメントにすら日本語が含まれると動かない


   u        左にサイドバーパネル、右にグラフパネルという構図が固定
             幅とか変えたいのに....


   u        レンジスライダーのレンジを保持して左右に動いて欲しい


   u        レンジスライダー、キーボードの矢印で操作できない


   u        レンジスライダーにintegerの値しか使えない


   u        submitButtonをcheckboxで出したり消したりしたい

                                                         37
2013/01/26
サイバー系


     参考文献
   u        shiny
         https://github.com/rstudio/shiny/

   u        shiny-server
         https://github.com/rstudio/shiny-server

   u        tutorial
         http://rstudio.github.com/shiny/tutorial/

   u        google group
         https://groups.google.com/forum/?fromgroups#!forum/shiny-discuss

   u        shinyでrglを使う
         https://github.com/trestletech/shiny-sandbox/tree/master/rgl

   u        hoxo_mさんのShinyアプリをワンクリックで起動するやつ
         http://d.hatena.ne.jp/hoxo_m/20121122/p1

   u        バタデ先生の、みんなでシャイニイイイイイイイイイイイイイイイ
         http://d.hatena.ne.jp/dichika/touch/20130118/1358470135

                                                                                    38
2013/01/26
サイバー系


     まとめ


 1. シャイニングウィザードを紹介して
 2. ついでにshinyも紹介して

 3. shinyアプリの配布方法も紹介して

 4. 最後にデモった
             




                                 39
2013/01/26

Weitere ähnliche Inhalte

Was ist angesagt?

ベイズファクターとモデル選択
ベイズファクターとモデル選択ベイズファクターとモデル選択
ベイズファクターとモデル選択kazutantan
 
構造方程式モデルによる因果探索と非ガウス性
構造方程式モデルによる因果探索と非ガウス性構造方程式モデルによる因果探索と非ガウス性
構造方程式モデルによる因果探索と非ガウス性Shiga University, RIKEN
 
ベイズモデリングと仲良くするために
ベイズモデリングと仲良くするためにベイズモデリングと仲良くするために
ベイズモデリングと仲良くするためにShushi Namba
 
相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心takehikoihayashi
 
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)Hiroshi Shimizu
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展Shiga University, RIKEN
 
100614 構造方程式モデリング基本の「き」
100614 構造方程式モデリング基本の「き」100614 構造方程式モデリング基本の「き」
100614 構造方程式モデリング基本の「き」Shinohara Masahiro
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門Kawamoto_Kazuhiko
 
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章Shushi Namba
 
ggplot2用例集 入門編
ggplot2用例集 入門編ggplot2用例集 入門編
ggplot2用例集 入門編nocchi_airport
 
状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38horihorio
 
機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)Satoshi Hara
 
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」Ken'ichi Matsui
 
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章nocchi_airport
 
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明Satoshi Hara
 
SapporoR#6 初心者セッションスライド
SapporoR#6 初心者セッションスライドSapporoR#6 初心者セッションスライド
SapporoR#6 初心者セッションスライドHiroshi Shimizu
 

Was ist angesagt? (20)

ベイズファクターとモデル選択
ベイズファクターとモデル選択ベイズファクターとモデル選択
ベイズファクターとモデル選択
 
構造方程式モデルによる因果探索と非ガウス性
構造方程式モデルによる因果探索と非ガウス性構造方程式モデルによる因果探索と非ガウス性
構造方程式モデルによる因果探索と非ガウス性
 
ベイズモデリングと仲良くするために
ベイズモデリングと仲良くするためにベイズモデリングと仲良くするために
ベイズモデリングと仲良くするために
 
相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心
 
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
StanとRでベイズ統計モデリング読書会 導入編(1章~3章)
 
2 3.GLMの基礎
2 3.GLMの基礎2 3.GLMの基礎
2 3.GLMの基礎
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
 
100614 構造方程式モデリング基本の「き」
100614 構造方程式モデリング基本の「き」100614 構造方程式モデリング基本の「き」
100614 構造方程式モデリング基本の「き」
 
因果推論の基礎
因果推論の基礎因果推論の基礎
因果推論の基礎
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門
 
Stan超初心者入門
Stan超初心者入門Stan超初心者入門
Stan超初心者入門
 
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
 
ggplot2用例集 入門編
ggplot2用例集 入門編ggplot2用例集 入門編
ggplot2用例集 入門編
 
状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38
 
機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)
 
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
 
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
 
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明
 
SapporoR#6 初心者セッションスライド
SapporoR#6 初心者セッションスライドSapporoR#6 初心者セッションスライド
SapporoR#6 初心者セッションスライド
 
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
一般化線形モデル (GLM) & 一般化加法モデル(GAM) 一般化線形モデル (GLM) & 一般化加法モデル(GAM)
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
 

Ähnlich wie はじめてのShiny

AWS Lambda + Python資料 ver0.94 20160825
AWS Lambda + Python資料 ver0.94 20160825AWS Lambda + Python資料 ver0.94 20160825
AWS Lambda + Python資料 ver0.94 20160825Yasuharu Suzuki
 
そろそろRStudioの話
そろそろRStudioの話そろそろRStudioの話
そろそろRStudioの話Kazuya Wada
 
Shiny-Serverあれこれ
Shiny-ServerあれこれShiny-Serverあれこれ
Shiny-ServerあれこれKazuya Wada
 
Morioka As 0x06 Usagi Koyomirya
Morioka As 0x06 Usagi KoyomiryaMorioka As 0x06 Usagi Koyomirya
Morioka As 0x06 Usagi Koyomirya兎 伊藤
 
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン 【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン linkbal
 
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!Naruhiko Ogasawara
 
中規模Androidアプリ開発の過程に生じた問題と対策の紹介
中規模Androidアプリ開発の過程に生じた問題と対策の紹介中規模Androidアプリ開発の過程に生じた問題と対策の紹介
中規模Androidアプリ開発の過程に生じた問題と対策の紹介NilOne Ltd.
 
オープンソースで作るスマホ文字認識アプリ
オープンソースで作るスマホ文字認識アプリオープンソースで作るスマホ文字認識アプリ
オープンソースで作るスマホ文字認識アプリ陽平 山口
 
130329 perl casual_ruik
130329 perl casual_ruik130329 perl casual_ruik
130329 perl casual_ruikRui Kimura
 
SwaggerとAPIのデザイン
SwaggerとAPIのデザインSwaggerとAPIのデザイン
SwaggerとAPIのデザインKazuhiro Hara
 
iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜Yusuke SAITO
 
Fluxflex meetup 2011 in Tokyo
Fluxflex meetup 2011 in TokyoFluxflex meetup 2011 in Tokyo
Fluxflex meetup 2011 in TokyoKyosuke Inoue
 
Rが苦手な人にもRを使って頂くために~RcommanderとRook~
Rが苦手な人にもRを使って頂くために~RcommanderとRook~Rが苦手な人にもRを使って頂くために~RcommanderとRook~
Rが苦手な人にもRを使って頂くために~RcommanderとRook~Kazuya Wada
 
fluxflex meetup in Tokyo
fluxflex meetup in Tokyofluxflex meetup in Tokyo
fluxflex meetup in TokyoKyosuke Inoue
 
APIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjpAPIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjpTakeshi Komiya
 
DeployR使ってみた話
DeployR使ってみた話DeployR使ってみた話
DeployR使ってみた話Kazuya Wada
 
9/16 Tokyo Apache Drill Meetup - drill vs sparksql
9/16 Tokyo Apache Drill Meetup - drill vs sparksql9/16 Tokyo Apache Drill Meetup - drill vs sparksql
9/16 Tokyo Apache Drill Meetup - drill vs sparksqlMitsutoshi Kiuchi
 
Hardware Sketching Workshop 2013
Hardware Sketching Workshop 2013Hardware Sketching Workshop 2013
Hardware Sketching Workshop 2013Shigeru Kobayashi
 
AnsibleでAzureの インフラを管理する話 + α
AnsibleでAzureの インフラを管理する話 + αAnsibleでAzureの インフラを管理する話 + α
AnsibleでAzureの インフラを管理する話 + αyaegashi
 

Ähnlich wie はじめてのShiny (20)

AWS Lambda + Python資料 ver0.94 20160825
AWS Lambda + Python資料 ver0.94 20160825AWS Lambda + Python資料 ver0.94 20160825
AWS Lambda + Python資料 ver0.94 20160825
 
そろそろRStudioの話
そろそろRStudioの話そろそろRStudioの話
そろそろRStudioの話
 
Shiny-Serverあれこれ
Shiny-ServerあれこれShiny-Serverあれこれ
Shiny-Serverあれこれ
 
Morioka As 0x06 Usagi Koyomirya
Morioka As 0x06 Usagi KoyomiryaMorioka As 0x06 Usagi Koyomirya
Morioka As 0x06 Usagi Koyomirya
 
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン 【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン
【テックリンク】平日の夜1時間で学ぶ!RubyonRails初心者ハンズオン
 
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
Case study to use MongoDB in middle-class SIer / (中規模) SIerだってMongoDBできたよ!
 
中規模Androidアプリ開発の過程に生じた問題と対策の紹介
中規模Androidアプリ開発の過程に生じた問題と対策の紹介中規模Androidアプリ開発の過程に生じた問題と対策の紹介
中規模Androidアプリ開発の過程に生じた問題と対策の紹介
 
オープンソースで作るスマホ文字認識アプリ
オープンソースで作るスマホ文字認識アプリオープンソースで作るスマホ文字認識アプリ
オープンソースで作るスマホ文字認識アプリ
 
130329 perl casual_ruik
130329 perl casual_ruik130329 perl casual_ruik
130329 perl casual_ruik
 
SwaggerとAPIのデザイン
SwaggerとAPIのデザインSwaggerとAPIのデザイン
SwaggerとAPIのデザイン
 
iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜
 
Fluxflex meetup 2011 in Tokyo
Fluxflex meetup 2011 in TokyoFluxflex meetup 2011 in Tokyo
Fluxflex meetup 2011 in Tokyo
 
Rが苦手な人にもRを使って頂くために~RcommanderとRook~
Rが苦手な人にもRを使って頂くために~RcommanderとRook~Rが苦手な人にもRを使って頂くために~RcommanderとRook~
Rが苦手な人にもRを使って頂くために~RcommanderとRook~
 
fluxflex meetup in Tokyo
fluxflex meetup in Tokyofluxflex meetup in Tokyo
fluxflex meetup in Tokyo
 
APIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjpAPIドキュメントの話 #sphinxjp
APIドキュメントの話 #sphinxjp
 
DeployR使ってみた話
DeployR使ってみた話DeployR使ってみた話
DeployR使ってみた話
 
9/16 Tokyo Apache Drill Meetup - drill vs sparksql
9/16 Tokyo Apache Drill Meetup - drill vs sparksql9/16 Tokyo Apache Drill Meetup - drill vs sparksql
9/16 Tokyo Apache Drill Meetup - drill vs sparksql
 
Realm meet up #17
Realm meet up #17Realm meet up #17
Realm meet up #17
 
Hardware Sketching Workshop 2013
Hardware Sketching Workshop 2013Hardware Sketching Workshop 2013
Hardware Sketching Workshop 2013
 
AnsibleでAzureの インフラを管理する話 + α
AnsibleでAzureの インフラを管理する話 + αAnsibleでAzureの インフラを管理する話 + α
AnsibleでAzureの インフラを管理する話 + α
 

Mehr von Kazuya Wada

オンラインTVサービスの分析事例
オンラインTVサービスの分析事例オンラインTVサービスの分析事例
オンラインTVサービスの分析事例Kazuya Wada
 
道玄坂Lt#2 wdkz
道玄坂Lt#2 wdkz道玄坂Lt#2 wdkz
道玄坂Lt#2 wdkzKazuya Wada
 
ハイレゾの話
ハイレゾの話ハイレゾの話
ハイレゾの話Kazuya Wada
 
データサイエンティストカジュアルトーク by wdkz
データサイエンティストカジュアルトーク by wdkzデータサイエンティストカジュアルトーク by wdkz
データサイエンティストカジュアルトーク by wdkzKazuya Wada
 
Rで触れる日本経済~RでVAR編~
Rで触れる日本経済~RでVAR編~Rで触れる日本経済~RでVAR編~
Rで触れる日本経済~RでVAR編~Kazuya Wada
 
RのffでGLMしてみたけど...
RのffでGLMしてみたけど...RのffでGLMしてみたけど...
RのffでGLMしてみたけど...Kazuya Wada
 
RでつくるWebアプリ~rApache編~
RでつくるWebアプリ~rApache編~RでつくるWebアプリ~rApache編~
RでつくるWebアプリ~rApache編~Kazuya Wada
 
Rでウォーリを探してみた
Rでウォーリを探してみたRでウォーリを探してみた
Rでウォーリを探してみたKazuya Wada
 
RのffとbigmemoryとRevoScaleRとを比較してみた
RのffとbigmemoryとRevoScaleRとを比較してみたRのffとbigmemoryとRevoScaleRとを比較してみた
RのffとbigmemoryとRevoScaleRとを比較してみたKazuya Wada
 
RでGPU使ってみた
RでGPU使ってみたRでGPU使ってみた
RでGPU使ってみたKazuya Wada
 

Mehr von Kazuya Wada (13)

オンラインTVサービスの分析事例
オンラインTVサービスの分析事例オンラインTVサービスの分析事例
オンラインTVサービスの分析事例
 
道玄坂Lt#2 wdkz
道玄坂Lt#2 wdkz道玄坂Lt#2 wdkz
道玄坂Lt#2 wdkz
 
ハイレゾの話
ハイレゾの話ハイレゾの話
ハイレゾの話
 
データサイエンティストカジュアルトーク by wdkz
データサイエンティストカジュアルトーク by wdkzデータサイエンティストカジュアルトーク by wdkz
データサイエンティストカジュアルトーク by wdkz
 
R-3.0.0でGLM
R-3.0.0でGLMR-3.0.0でGLM
R-3.0.0でGLM
 
JuliaでGLM
JuliaでGLMJuliaでGLM
JuliaでGLM
 
Rで触れる日本経済~RでVAR編~
Rで触れる日本経済~RでVAR編~Rで触れる日本経済~RでVAR編~
Rで触れる日本経済~RでVAR編~
 
RのffでGLMしてみたけど...
RのffでGLMしてみたけど...RのffでGLMしてみたけど...
RのffでGLMしてみたけど...
 
RでつくるWebアプリ~rApache編~
RでつくるWebアプリ~rApache編~RでつくるWebアプリ~rApache編~
RでつくるWebアプリ~rApache編~
 
Rでウォーリを探してみた
Rでウォーリを探してみたRでウォーリを探してみた
Rでウォーリを探してみた
 
RのffとbigmemoryとRevoScaleRとを比較してみた
RのffとbigmemoryとRevoScaleRとを比較してみたRのffとbigmemoryとRevoScaleRとを比較してみた
RのffとbigmemoryとRevoScaleRとを比較してみた
 
RでGPU使ってみた
RでGPU使ってみたRでGPU使ってみた
RでGPU使ってみた
 
Tokyo.R#16 wdkz
Tokyo.R#16 wdkzTokyo.R#16 wdkz
Tokyo.R#16 wdkz
 

Kürzlich hochgeladen

ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ssusere0a682
 
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学ssusere0a682
 
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptyuitoakatsukijp
 
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2Tokyo Institute of Technology
 
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料Takayuki Itoh
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationYukiTerazawa
 
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024koheioishi1
 

Kürzlich hochgeladen (7)

ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
 
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
 
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
 
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
 
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
 
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
 

はじめてのShiny

  • 1. 続・はじめてのShiny 2013/01/26 Tokyo.R#28 和田 計也 サイバー系
  • 2. サイバー系 はじめに ※この発表は個人の見 解であり、所属する組 織の公式見解ではあり ません。 2 2013/01/26
  • 3. サイバー系 自己紹介 u 和田 計也(@wdkz) u 静岡県袋井市出身 u サイバー系企業でデータマイニングエンジニア職 u 最近は奥華子ばっか聴いてます u 前職はバイオベンチャー u バイオマーカ探索してた u 学生時代は枯草菌の研究 3 2013/01/26
  • 4. サイバー系 今日のお話 u Shinyとは? u とりあえずShiny u Shinyアプリの配布 u Shinyの実例 4 2013/01/26
  • 5. サイバー系 今日のお話 u Shinyとは? u とりあえずShiny u Shinyアプリの配布 u Shinyの実例 5 2013/01/26
  • 6. サイバー系 (いきなり脱線しますが)Mathematica 9が出ました u シャイニングウィザードと発音するみたいです 6 2013/01/26
  • 7. サイバー系 Mathematica 9が出ました u MathematicaからRを使うことで   ➡こんなインタラクティブなのが出来るみたいです! 7 2013/01/26
  • 8. サイバー系 Shiny u それ出来ます、そうShinyを使えばね http://glimmer.rstudio.com/wdkz125/theWorld/ 8 2013/01/26
  • 9. サイバー系 Shinyとは? u Shinyとは、インタラクティブなWebアプリをR でチョー手軽に作れるRのライブラリ Rとnode.jsをwebsocketsで繋いでる感じ u 2012年11月に初登場 u Joe Chengさん作 (RStudio Inc.) UseR!2012でwebsocketsの話してた人やー 9 2013/01/26
  • 10. サイバー系 ShinyかわいいよShiny u rApacheとかあったじゃん!? だがあれはインタラクティブではない それにrApacheの作者はもう飽きたらしい すまん 飽きた UseR!2012でwebsocketsの話してた人やー 10 2013/01/26
  • 11. サイバー系 今日のお話 u Shinyとは? u とりあえずShiny u Shinyアプリの配布 u Shinyの実例 11 2013/01/26
  • 12. サイバー系 とりあえずShiny u さっきの再び出します u これを実際にやってみましょう 12 2013/01/26
  • 13. サイバー系 Shinyでwebアプリを作る① u 適当なフォルダを作成   今回の例では「01_plot」とした u その中に2個のファイルを作成 ⅰ)server.R ⅱ)ui.R 上記2つのファイル名は必ず こうしなければいけない!! 13 2013/01/26
  • 14. サイバー系 Shinyでwebアプリを作る② u viewの作成はui.R library(shiny) shinyUI(pageWithSidebar( headerPanel("Hello Shiny!"), sidebarPanel( numericInput("obs", "Number of points:", 1000), sliderInput("mean", "Mean:", min=-100, max=100, value=0), sliderInput("sd", "Standard Deviation:", min=0, max=100, value=1) ), viewは3つからなる mainPanel( ⅰ)ヘッダー・・・タイトル plotOutput("distPlot") ⅱ)サイドバー・・・インプットのとこ ) ⅲ)メイン・・・アウトプットのとこ )) 14 2013/01/26
  • 15. サイバー系 Shinyでwebアプリを作る③ u view部分ui.Rの深入り_sidebar inputオブジェクトには固有の名前をつけておく sidebarPanel( (server.Rから入力値を取得するのに使う) numericInput("obs", "Number of points:", 1000), sliderInput("mean", "Mean:", min=-100, max=100, value=0), sliderInput("sd", "Standard Deviation:", min=0, max=100, value=1) ), サイドバーは、 Inputを書き足すこと でどんどん増やせる。 Inputに何があ るかはCRAN上のShinyのReference Manual等を見るとわかる 15 2013/01/26
  • 16. サイバー系 Shinyでwebアプリを作る④ u logicの作成はserver.R library(shiny) ui.Rで定義した、アウトプットの固有名 shinyServer(function(input, output) { output$distPlot <- reactivePlot(function() { dist <- rnorm(input$obs, mean=input$mean, ui.Rで定義した、インプットの固有名を sd=input$sd) 使うことで値を取得できる hist(dist, prob=TRUE) lines(density(dist, adjust=2), lty="dotted", col="blue") }) }) メインパネルは、server.R内で reactive 関数をオーバーライドするこ とでinteractiveな描写ができるようにな る。reactive 関数に何があるかは Reference Manual等を見るとわかる 16 2013/01/26
  • 17. サイバー系 Shinyでwebアプリを起動する u カレントフォルダに01_plotフォルダ があってその中にserver.Rとui.Rと がある状態でRコンソールから > library(shiny) > runApp(“01_plot”) Listening on port 8100 デフォルトブラウザが起動 17 2013/01/26
  • 18. サイバー系 今日のお話 u Shinyとは? u とりあえずShiny u Shinyアプリの配布 u Shinyの実例 18 2013/01/26
  • 19. サイバー系 Shinyアプリの配布方法_ローカル編 u プログラムごと渡してローカルで起動してもらう 1.フォルダごとzipで固めて渡す。渡された人は解凍してR     起動してshiny::runApp( hogehoge )する     利点:最も汎用性高い 欠点:ITリテラシーの高くない人に、Rを起動してrunApp してもらうことの絶望感 2.Gistにコードを上げて shiny::runGist( hogehoge )してもらう      利点:URLを教えるだけでいいのが楽  欠点:社外秘情報を含むものには使えないし、1同様 3.@hoxo_mさん作成のOpenShiny.exeを使う 利点:ITリテラシーに関係なく使ってもらえそう 欠点:Winマシン限定。exeファイルを配布するというドキドキ感 19 2013/01/26
  • 20. サイバー系 3.OpenShiny.exeの紹介 u @hoxo_mさんが.netで作った「Shinyをワンクリックで起動する やつ」 配布方法:適当なフォルダに①「OpenShiny.exe」        ②「server.R」③「ui.R」を置いてフォルダごと配布    使用方法:もらった人はOpenShiny.exeをクリックするだけ!! フォルダ名は 適当なのつけてね 20 2013/01/26
  • 21. サイバー系 Shinyアプリの配布方法_サーバ編 u サーバにデプロイしてURLをみてもらう 4.rApacheに組み込んじゃう 無理 即答   5.Shinyホスティングサービス(RStudio.com運営)を使う 楽 β版だからいつ止まっても(有償化しても)おかしくない 社外秘情報を含むものには使えない 6.Shiny-serverを使ってデプロイ ちょい面倒だけど社内で使うならこれかな 21 2013/01/26
  • 22. サイバー系 5.RStudio.com運営shinyホスティングサービス u まああれだ、ホスティング用のアカウント発行したぜ!って いうe-mailに書かれてる通りやればできる 1.sshでログインして 2.自分のホームに /ShinyApp/ディレクトリ作って 3.そこに適当なディレクトリ(例えばtheWorld)作って 4.scpでそこにui.Rとserver.Rをアップロード http://glimmer.rstudio.com/wdkz125/theWorld/ ディレクトリ名 ユーザ名 22 2013/01/26
  • 23. サイバー系 6.Shiny-serverについて http://blog.rstudio.org/2012/12/04/shiny-update/ とりあえずlinux で動くけどwinと かmacosxで動 かないよ オープンソースに してみたよ!! 有償版も考えてるらしい 23 2013/01/26
  • 24. サイバー系 6.Shiny-server有償版についてわかっていること とりあえず、有償版では何らかの認証ができたらいいな って思ってるらしい 24 2013/01/26
  • 25. サイバー系 6.Shiny-serverのインストール u Shiny-severインストールに必要なもの 1. R.2.15.0以上 2. Rのshinyライブラリをユーザフォルダじゃないところに インストール 3. node.js 0.8.16以上 ubuntuの場合              sudo  apt-­‐get  install  python-­‐software-­‐properties  python  g++                make              sudo  add-­‐apt-­‐repository  ppa:chris-­‐lea/node.js              sudo  apt-­‐get  update              sudo  apt-­‐get  install  nodejs  npm u Shiny-severのインストール        sudo  npm  install  -­‐g  shiny-­‐server        sudo  useradd  -­‐r  shiny        sudo  mkdir  -­‐p  /var/shiny-­‐server/www        sudo  mkdir  -­‐p  /var/shiny-­‐server/log 25 2013/01/26
  • 26. サイバー系 6.Shiny-serverの起動 u 以下のディレクトリに適当な名前のディレクトリ作成して そこにui.Rとserver.Rとをコピって /var/shiny-server/www/AppName u 起動  sudo shiny-server u ブラウザからアクセス http://<hostname>:3838/AppName 26 2013/01/26
  • 27. サイバー系 今日のお話 u shinyとは? u とりあえずshiny u shinyアプリの配布 u shinyの実例 27 2013/01/26
  • 28. サイバー系 shinyの実例デモ u デモで使うデータはもちろんiris    irisに関する詳しい資料は以下を参照して下さい➡ 「irisの正体 (R Advent Calendar 2012 6日目)」 http://d.hatena.ne.jp/tsutatsutatsuta/20121206/1354737461 28 2013/01/26
  • 29. サイバー系 shinyの利用例 tabで いろいろ 選べる 29 2013/01/26
  • 30. サイバー系 shinyの利用例 summ aryの tabを 選択す ると もっと下のほうにsummary結果も出てるんだけど、見えんな 30 2013/01/26
  • 31. サイバー系 shinyの利用例 ここでデータのレンジを絞ると、下のグラフ中のデータポイント も変化する 31 2013/01/26
  • 32. サイバー系 shinyの利用例 WebG L使って 3次元p lotも出 来る 32 2013/01/26
  • 33. サイバー系 shinyの利用例 決定木 選んで みたり 33 2013/01/26
  • 34. サイバー系 shinyの利用例 GLM選 んでみ たり 34 2013/01/26
  • 35. サイバー系 shinyの利用例 サイド バーも ックス チェッ オンオ クボ 変わる フで動 よ 的に 35 2013/01/26
  • 36. サイバー系 shinyのTips u staticなページ(タブ)を作りたい HTML()関数でhtmlを直書きする u インタラクティブすぎる submitButtonを配置すれば、ボタン押すまで反映しない u サイドバーパネルもインタラクティブにしたい conditionalPanelを使う conditionalPanel(condition= input.@@=true ,,,) u サイドバーパネルをもっとインタラクティブにしたい ui.R中はuiOutput("rice") みたいにしておいてserver.Rで output$rice <- reactiveUI(function(){ selectInput( gets , dandy , choice=1:10, selected=1) }) ってすればいい。↑ここでinputの値取得して条件分岐とかバリバリ書く 36 2013/01/26
  • 37. サイバー系 shinyのここがイマイチ u 日本語一切使えない。コメントにすら日本語が含まれると動かない u 左にサイドバーパネル、右にグラフパネルという構図が固定 幅とか変えたいのに.... u レンジスライダーのレンジを保持して左右に動いて欲しい u レンジスライダー、キーボードの矢印で操作できない u レンジスライダーにintegerの値しか使えない u submitButtonをcheckboxで出したり消したりしたい 37 2013/01/26
  • 38. サイバー系 参考文献 u shiny https://github.com/rstudio/shiny/ u shiny-server https://github.com/rstudio/shiny-server u tutorial http://rstudio.github.com/shiny/tutorial/ u google group https://groups.google.com/forum/?fromgroups#!forum/shiny-discuss u shinyでrglを使う https://github.com/trestletech/shiny-sandbox/tree/master/rgl u hoxo_mさんのShinyアプリをワンクリックで起動するやつ http://d.hatena.ne.jp/hoxo_m/20121122/p1 u バタデ先生の、みんなでシャイニイイイイイイイイイイイイイイイ http://d.hatena.ne.jp/dichika/touch/20130118/1358470135 38 2013/01/26
  • 39. サイバー系 まとめ 1. シャイニングウィザードを紹介して 2. ついでにshinyも紹介して 3. shinyアプリの配布方法も紹介して 4. 最後にデモった        39 2013/01/26