ふんわり R-tips

ぜんぜんわからない、俺たちは雰囲気でRをやっている

Shiny

rmarkdownを使った組み込みShinyアプリケーション

このエントリは、RStudioのEmbedded Shiny Appsを抜粋・翻訳・追記したものです。 http://rmarkdown.rstudio.com/authoring_embedded_shiny.html 概要 インラインアプリケーション定義 外部アプリケーション参照 実行例 概要 rmarkdownで作成したドキュメン…

insertUIを用いた動的なShinyのユーザインタフェース

このエントリでは、rstudio::conf 2017で紹介されたShinyのinsertUIを解説します。 https://github.com/bborgesr/rstudio-conf2017 githubで公開されたソースコード(03-insertUI.R)を引用しています。 insertUIの使用例 実行例 ソースコード ui側での定義 se…

Shinyアプリケーション作成のTips in ポケモン検索

はじめに 実行例 Shinyアプリケーション作成のTips Rangeフォーマットで、sliderInputの値を取得 DTによるdata.frameの表示 ui server 更新したuiを入力として使用 ShinyでrenderPlotとggplot2を使って重ね描き shinyapps.ioに(制限付き)無料でアプリケーシ…

renderUIを用いた動的なShinyのユーザインタフェース

このエントリでは、rstudio::conf 2017で紹介されたShinyのinsertUIを解説します。 https://github.com/bborgesr/rstudio-conf2017 githubで公開されたソースコードを引用しています。 renderUIの使用例 実行例 ソースコード ui側での定義 server側での定義 …

ShinyアプリケーションをHTMLでカスタマイズする方法

このエントリは、Shiny公式サイトのCustomize your UI with HTMLを抜粋・翻訳・追記したものです。 https://shiny.rstudio.com/articles/html-tags.html shinyUIが生成するHTMLの説明 tags 属性(Attributes) タグ関数の引数にネストしたHTMLを追加 withTags…

Shinyアプリケーションのデバッグテクニック

このエントリはShiny公式サイトのDebugging Shiny applicationsを抜粋・翻訳・追記したものです。 Shiny - Debugging Shiny applications 概要 Shinyアプリケーションはreactiveで、入力操作に応じて挙動が変わるので、単純なRスクリプトと比較するとデバッ…

ShinyアプリケーションとBootstrap

このエントリは、Shiny公式サイトのApplication layout guideを抜粋・翻訳・追記したものです。 Shiny - Application layout guide Bootstrapのグリッド 流動グリッド 列のオフセット設定 列のネスト 固定グリッド 固定グリッドの使い方 列のネスト レスポン…

Shinyアプリケーションでブラウザ上に通知を表示

このエントリは、Shiny公式サイトのNotificationの説明を抜粋・翻訳・追記したものです。 Shiny - Notifications バージョン0.14から、showNotification()関数を用いてShinyでブラウザ上に通知を表示できるようになっています。ShinyのGALLERYに例があります…

Shinyにおけるコンポーネントのレイアウト方法

概要 サイドバーレイアウト グリッドレイアウト タブセット ナビゲーションリスト(Navlists) ナビゲーションバーページ(NavBar Page) セカンダリーナビゲーション ナビゲーションバーの追加オプション 概要 Shinyにおけるコンポーネントのレイアウト方法を説…

Shinyアプリケーションを単一ファイルapp.Rから実行する方法

Shinyアプリケーションを一つのファイルから実行する方法を説明します。 server.R ui.R server.Rとui.Rから作成したapp.R runApp()とapp.Rなしで、Shinyアプリケーションを実行 Shinyのバージョン0.10.2から、server.Rとui.Rの2つのファイルからビルドするこ…

Shinyサンプルアプリケーション「11_timer」の説明

11_timerは、コントロールなしで時刻のみをテキスト表示する例です。 「11_timer」の実行 library(shiny) runExample("11_timer") server.R function(input, output, session) { output$currentTime <- renderText({ invalidateLater(1000, session) paste("…

Shinyサンプルアプリケーション「10_download」の説明

10_downloadは、データセットを選択と、そのデータをダウンロードするDownloadボタンの使用例です。mainPanelには、選択したCSVファイルの中身を表示します。 「10_download」の実行 library(shiny) runExample("10_download") server.R function(input, out…

Shinyサンプルアプリケーション「09_upload」の説明

09_uploadは、ファイルをアップロードして表示する例です。CSVファイルをアップロードして、ヘッダやセパレータを指定すると、表として出力します。 「09_upload」の実行 library(shiny) runExample("09_upload") server.R library(shiny) function(input, o…

Shinyサンプルアプリケーション「08_html」の説明

08_htmlは、ui.Rなしで、server.Rで計算した値をHTMLファイルで表示する例です。server.Rは06_tabsetsと全く同じです。 「08_html」の実行 library(shiny) runExample("08_html") server.R library(shiny) # ランダムな分布を表示するサーバー側を定義 funct…

Shinyサンプルアプリケーション「07_widgets」の説明

07_widgetsは、02_textにhelpTextやsubmitButtonといったwidgetsを追加した例です。 「07_widgets」の実行 library(shiny) runExample("07_widgets") server.R library(shiny) library(datasets) # 選択されたデータのsummaryと、入力された数のデータを表示…

Shinyサンプルアプリケーション「06_tabsets」の説明

06_tabsetsは、サーバー側で分布を生成し、UI側で分布を3つの形式でタブ上に配置して表示する例です。 「06_tabsets」の実行 library(shiny) runExample("06_tabsets") server.R library(shiny) # ランダムな分布を生成するサーバー側を定義 function(input…

Shinyサンプルアプリケーション「05_sliders」の説明

05_slidersは、5つのスライダーと、その値をテキスト表示する例です。 「05_sliders」の実行 library(shiny) runExample("05_sliders") server.R library(shiny) # サーバー側のスライダーの動作を定義 function(input, output) { # すべての変数に対応するr…

Shinyサンプルアプリケーション「04_mpg」の説明

04_mpgは、(車で走行する場合の)ガロンとマイルの関係(MPG:mile per gallon)を箱ひげ図で表示する例です。ガロンはガソリンの単位で、マイルは距離の単位。 「04_mpg」の実行 library(shiny) runExample("04_mpg") server.R library(shiny) library(dataset…

Shinyサンプルアプリケーション「03_reactivity」の説明

03_reactivityは、inputとoutputがどのようにreactiveに変化するのかを説明する例。02_textと同様の変数や関数で、input$dataset, input$caption, output$caption, output$viewそれぞれの計算に依存関係がある場合に、どの変数を変えると、どの出力がreactiv…

Shinyサンプルアプリケーション「02_text」の説明

02_textは、データセット選択と表示するデータ数を入力として、選択されたデータセットのsummaryと入力されたデータ数のデータセットをHTMLで表として出力する例となっています。 「02_text」の実行 library(shiny) runExample("02_text") server.R library(…

Shinyサンプルアプリケーション「01_hello」の説明

01_helloは、入力用スライダーと出力用のプロットがあり、server.Rで入力された値をプロットに変換するプログラムとなっています。 「01_hello」の実行 library(shiny) runExample("01_hello") server.R library(shiny) # ヒストグラムを描くためのサーバ側…

Shinyのチュートリアル

Shinyパッケージは、RでWebアプリケーション開発するときに有用なフレームワークです。 Shinyのインストールと実行 10個のサンプルアプリケーション サンプルアプリケーションの実行 ライセンス 単一ファイルからのShinyアプリケーション実行 レイアウト方法…