Shinyは、Rのパッケージの一つで、Rookと同様に、バックエンドにRを用いてRに内蔵されているWebサーバー上で統計解析を可能にする対話式のWebアプリケーションを簡単に作成できるようにするものです。
なお、両者共にApache上でRを動作させるrApacheでデプロイすることもできます。
ShinyはRStudioプロジェクトの一環として開発されていますが、RStudioとは独立して動作します。
(RStudioについては、「RStudio」を参照してください。)
Web上のユーザーインタフェースを司るui.Rと内部動作を司るserver.Rの二つのR言語スクリプトだけでサーバーサイドのコンテンツ作成ができるのが大きな特徴です。*1
Shiny 公式サイト
Tutorial: Building 'Shiny' Applications with R チュートリアル
日本語訳については「チュートリアル: RによるShinyアプリケーションの構築」を参照のこと
shiny 開発レポジトリ
各RユーザーによるShinyの使用例はglimmerサーバーにて公開されています。(一覧)
自分も試してみたい、という方は、登録したうえで指示に従ってR言語スクリプトをアップロードするだけでできます。*2
Shiny Server beta program Shiny用サーバー(公開用)利用登録
他のインターネット上のサーバーならば、例えば、GistsにR言語スクリプトをアップロードして、利用者にURLを通知するのが簡単です。*3
URLが
ならば、
利用者はRコンソール上で
shiny::runGist ( "ディレクトリ" )
と入力するだけで使えます。
Rコンソール上で
if ( length ( grep ( paste ( "^" , "shiny" , "$" , sep="" ) , installed.packages ( ) [ , "Package" ] ) ) < 1 ) { install.packages ( shiny ) # 未インストールの場合にのみ"shiny"をインストールする } library ( shiny ) # パッケージをロードする runApp ( "ui.Rとserver.Rの二つがあるディレクトリのpath" ) # Shiny Web App. 実行
とする。
ウェブサーバーが立ち上がりますが、セキュリティ周りが弱いので注意して運用する必要が有ります。
ローカルにサーバーを立てる場合はOpenShinyという補助アプリケーションが存在します。(Windows 限定)