flexdashboardの本格入門
self_contained: true
でhtmlファイルにまとめられるサンプルその1:
サンプルその2:
サンプルその3:
# CRANから
install.packages("flexdashboard")
# GitHubから
remotes::install_github("rstudio/flexdashboard")
# githubinstallで
githubinstall::githubinstall("flexdashboard")
knitr::kable(mtcars)
こうなる:
ふたつ目のチャンクにggplot2で描いてみる
library(ggplot2)
ggplot(mtcars, aes(wt, mpg)) + geom_point()
みっつ目のチャンクにplotlyで描いてみる
library(plotly)
plot_ly(data = mtcars, x = ~cyl, y =~mpg, type = "box")
こうなった:
---
title: "ダッシュボードタイトル"
output:
flexdashboard::flex_dashboard:
(以下,設定項目)
---
?flexdashboard::flex_dashboard
のUsageを参照theme: cosmo
(defaultと同値)だと48pxdefault
で,これはcosmo
と同値default
, bootstrap
, cerulean
, journal
, flatly
, readable
, spacelab
, united
, cosmo
, lumen
, paper
, sandstone
, simplex
, yeti
が使用可能social: menu
とするとTwitter, Facebook, Google+, LinkedIn, Pinterestが選べるようにsocial: [ "twitter", "facebook", "menu" ]
を指定してみるとイメージつかめます--seciton-div
を利用し、jsやcssで区分けを実現html_document
の魔改造と思っても間違いはない公式やサンプルでは---
を使った方法で解説
ブロック名
---
でもいつもの##
でもOK
## ブロック名
例えば以下のようなRmdを用意:
こんな感じになります:
親ブロックを行方向に切り替えるには、yamlに以下の設定を付与
orientation: rows
以下のようなRmdを用意する
こんな感じになります:
いつも通り ###
で作ります
### 子ブロックパネル
例えば、以下のようなRmdを準備します:
こんな感じになります:
class="tabset"
が付与される## 親ブロック {.tabset}
例えば、以下のようなRmdを準備します:
こんな感じになります
{data-width=600}
といった感じでつければOK
## 親ブロック{data-width=600}
例えば、以下のようなRmdを準備します:
こんな感じになります:
vertical-layout: scroll
で縦方向スクロールするようにoutput:
flexdashboard::flex_dashboard:
vertical_layout: scroll
例えば、以下のようなRmdを準備します:
こんな感じになります:
ほげ
===
もしくは
# ほげ
例えば、以下のようなRmdを準備します:
こんな感じになります:
knitr::kable()
が便利
DT::datatable()
も便利
いろいろ使えます:
などなど
単一の値をシンプルに示せます:
valueBox()
関数でOK
valueBox(value, icon = "fa-pencil")
ようはメーターを作ることができます:
gauge()
関数でOK
gauge(value, min = 0, max = 50, gaugeSectors(
success = c(41, 50), warning = c(21, 40), danger = c(0, 20)
))
(実演)
runtime: shiny
をyamlに書いてくださいself_contained: true
なら単一htmlになる
#おしえてぞうさん