首页 > 解决方案 > read_chunk 不适用于 rmarkdown 中的闪亮小部件

问题描述

我正在尝试在 Rmarkdown 报告中使用函数 read_chunk 和闪亮的小部件。输出是一个 HTML 文档和运行时:闪亮。当我单独运行这些块时,它工作得非常好。但是当我 read_chunk()在我的脚本中使用然后 run_chunk t 只运行源块的一个块时,它会抛出一个错误。我觉得有一种方法可以与闪亮的小部件交互并读取块。请帮助我如何做到这一点。

错误:

警告:解析错误::2:0:输入 1 意外结束:read_chunk(paste0(params$code_path,"chunk_name.R")

我正在使用的块保存在'/loaction/chunk_v1.R'

## @knitr iris_sub
#######################################################################################################################################
#######################################################################################################################################

iris_subset <- subset(iris, Species=='setosa')
#
---
params:
  code_chunk: '/location/'

title: "Untitled"
output: html_document
runtime: shiny
---

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

## R Markdown



```{r iris_sub}
read_chunk(paste0(params$code_chunk,"chunk_v1.R"))
```


```{r iris_plot, echo=FALSE}
sample_his <- function(dataset_name){

library(shiny)
shinyApp(
ui=fluidPage(
  titlePanel("Iris Dataset"),
  sidebarLayout(
    sidebarPanel(
      radioButtons("p", "Select column of iris dataset:",
                   list("Sepal.Length"='a', "Sepal.Width"='b', "Petal.Length"='c', "Petal.Width"='d')),
      sliderInput("bins",
                  "Number of bins:",
                  min = 1,
                  max = 50,
                  value = 30)
    ),
    mainPanel(
      plotOutput("distPlot")
    )
  )
),

server = function(input, output, session) {
  output$distPlot <- renderPlot({
    if(input$p=='a'){
      i<-1
    }

    if(input$p=='b'){
      i<-2
    }

    if(input$p=='c'){
      i<-3
    }

    if(input$p=='d'){
      i<-4
    }

    x    <- dataset_name[, i]

    bins <- seq(min(x), max(x), length.out = input$bins + 1)
    hist(x, breaks = bins, col = 'darkgray', border = 'white')
  })
}
)}
```

## Including Plots



```{r pressure, echo=FALSE}
sample_his(iris)
```

标签: rshinyr-markdown

解决方案


推荐阅读