2017-09-10 2 views
5

私はRMarkdownを使用してHugoブログに自分の最初の投稿をアップロードしようとしています。下には、文書を作成する私のコードを見つけることができます。ブログシャッフル用のRmarkdown文書にインタラクティブな光沢のあるアプリを組み込むHugo blog

--- 
title: "Untitled" 
author: "Jorge" 
date: "September 9, 2017" 
output: html_document 
runtime: shiny 
--- 


```{r setup, include=FALSE} 
knitr::opts_chunk$set(echo = TRUE) 

``` 


```{r echo=FALSE, include=FALSE} 
data('USArrests') 
head(USArrests) 
``` 
```{r echo = TRUE, include = FALSE} 

library(tidyverse) 
library(maps) 
library(mapproj) 
library(geosphere) 
library(ggrepel) 
library(scales) 
library(RColorBrewer) 
library(plotly) 
library(shiny) 
``` 

## Map 
```{r, echo = FALSE, include = TRUE} 

us_states <- map_data('state') 
USArrests$region <- tolower(row.names(USArrests)) 
arrest_map_data <- merge(us_states, USArrests, by = 'region') 
arrest_map_data <- arrest_map_data[order(arrest_map_data$order),] 

inputPanel(
    selectInput("crime", label = "Crime: ", 
      choices = list('Murder' = 'Murder', 
         'Assault' = 'Assault', 
         'Rape' = 'Rape'), selected = 'Murder') 

) 

renderPlot(

    ggplot() + coord_map() + 
geom_map(data = arrest_map_data, map = arrest_map_data, 
           aes(x = long, y = lat, map_id = region), 
           fill = "grey80", color = "black", size = 0.15) + 
        geom_polygon(data = arrest_map_data, aes_string(x = 'long', y = 'lat', 
                  group = 'group', fill = input$crime)) + 
        scale_fill_gradient(low = 'light blue', high = 'dark blue', name = 'Arrests per 100,000\nresidents') + 
        theme(legend.position = 'bottom', 
          panel.grid = element_blank(), 
          panel.background = element_blank(), 
          axis.text = element_blank(), 
          axis.title = element_blank()) 
) 
``` 

## Scatterplot 
```{r, echo = FALSE, include = TRUE} 

inputPanel(

    checkboxGroupInput("crime2", label = "Crime: ", 
       choices = list('Murder' = 'Murder', 
         'Assault' = 'Assault', 
         'Rape' = 'Rape'), selected = c('Murder', 'Assault')) 
) 

renderPlotly(

    ggplotly(ggplot(data = USArrests, 
       aes_string(x = input$crime2[1], y = input$crime2[2], text = input$region)) + 
     geom_point(fill = "grey80", color = "black", size = (USArrests$UrbanPop)/10)) 
) 
``` 

私はblogdownディレクトリに関連したRプロジェクトの投稿セクション内.Rmdファイルとしてこれを保存します。私は実行すると: エラー:上記のよう ページ:html_dependencyのパスはrender_pageで エラー(F)を停止 実行を提供していない

blogdown::serve_site() 

私はというエラーを取得します。

私はblogdownの初心者で、このエラーの解決策を見つけることができないので、誰かがこのエラーを回避し、Hugoにインタラクティブな光沢のあるアプリを含める方法についていくつかの洞察を提供できる場合はお知らせください。

ありがとうございました!

+0

根本的なエラーである「html_dependencyのためのパスが提供されていません」は、この質問[Shiny AppからShiny Presentationを作成しますか?](https://stackoverflow.com/questions/25654309/create-shiny-presentation-from)に関連している可能性があります。 -shiny-app) – jq170727

答えて

9

blogdownパッケージスタティックウェブサイトのパッケージです。つまり、静的ページのみを生成できます。シャイニーなアプリはライブのRセッションに依存するので、iframeを使わない限り静的なHTMLページに埋め込むことはできません。つまり、Shiny R Markdownの文書(runtime: shiny)をblogdownと一緒に使用することはできません。 RとShiny Serverが利用できるサーバーにShinyアプリケーションを公開し、<iframe src="URL-OF-YOUR-SHINY-APP"></iframe>を使用してWebページにアプリケーションを埋め込む必要があります。

+0

説明していただきありがとうございます。 – Jorge

関連する問題