76

mods の「広すぎる質問」ハンマーにぶつかるリスクがあるので、インタラクティブな RShinyツールとパッケージが大量に登場していることを踏まえて、どのツールをいつ使用しますか?

  1. Shiny - 私にとっては、プロジェクトを光沢のあるサーバーから実行する必要があるという唯一の欠点ですが、最良の選択のようです。

  2. Shinydashboard - 光沢がありますが、コールアウト用の優れた値ボックスがあります.

  3. flexdashboard - Rmd に書き込みます。まっすぐなシャイニーでは得られないことは何ですか?おそらく、データを渡してよければ、クライアントに電子メールを送信すると便利でしょうか? 私はいじっていましflexdashboardたが、データテーブル(ライブラリ(DT))を操作できないため、さらに数回の反復が必要だと感じています。

他の回答を見ると、この質問をするのは私だけではありません。

クリエイターは、パッケージやアプローチを紹介するためにたくさんのギャラリーを用意していますが、どの道を進むべきかはどうやってわかりますか?

どちらかを使用することの明確な利点は何ですか?

4

4 に答える 4

27

作成する必要がある 1 つのニュアンスがあります。インタラクティブ性は、背後でコードを実行するサーバーを必ずしも必要としません。クライアント側で実行される埋め込み JavaScript を使用して対話機能を提供できます (plotly、highcharts、leaflet など)。したがって、「対話性」という言葉を使用せず、対話性を明示的に説明すると、選択肢は次のようになります。

  • Shiny : ユーザー入力で R コードを実行するには、背後にサーバーが必要です。任意のレイアウトを実装できます。サーバー側 (R) またはクライアント側 (組み込み JavaScript) を処理することにより、対話型コードを実行できます。
  • Shinydashboard : ユーザー入力で R コードを実行するには、背後にサーバーが必要です。ダッシュボードのレイアウトを実装できます。ダッシュボード レイアウトで動作するように設計された特定のウィジェットが含まれています。サーバー側 (R) またはクライアント側 (組み込み JavaScript) を処理することにより、対話型コードを実行できます。
  • flexdashboard : ダッシュボードのように見える単なるドキュメント。また、ダッシュボード レイアウトで動作するように設計された特定のウィジェットも含まれています。対話型コードのクライアント側 (埋め込み JavaScript) のみを実行できます。

したがって、基本的に、必要なインタラクティブ性が既存のパッケージ (htmlwidgets を使用する) によって提供できる場合は、flexdashboard を使用するだけで、Shiny サーバーにデプロイする必要はありません。それ以外の場合は、Shiny サーバーにデプロイする必要があり、Shiny または Shinydashboard を使用する必要があります。

于 2016-10-03T11:57:46.367 に答える
14

フレックスダッシュボード内に光沢のあるモジュールを配置するのが好きです。runtime: shinyヘッダー セクションを設定する限りYAML、光沢のあるモジュールの使用は比較的簡単です。つまり、1 日かけて RStudio のすべての例を読んでから、自分のコードで同じことを試してみてください。学習曲線が終わったら、フレックスダッシュボードのモジュールを使用すると、将来の開発がはるかに合理化され、精神的に楽になります。また、私の経験では、対処を求められた根本的なデータベースの質問に本当に集中する機会が与えられます。おもうflexdashboards + shiny modulesレイアウト項目の一部を分割し、コードのセクションを簡単に追加または削除し、アプリケーション コードのさまざまな側面をより視覚的に区別できるレイアウト (RMD ファイルの「チャンク」のシェーディング) に分離する flexdash は、両方の長所を備えています。など)、shinyオブザーバー、プロキシ、またはカスタム レイアウトの設定など 、より複雑で典型的なものに入ることができます。

于 2017-09-28T16:06:54.420 に答える