Problem

有没有办法在shiny 的应用程序中插入(并判断)RMarkdown脚本.(注意,我并不是在RMarkdown中寻找一个解释为here的shiny 应用程序,也不是在Shinny(see Shiny Gallery Markdown)中寻找Markdown脚本.)

我正在构建一个包含文本、等式、代码块、绘图和交互元素的应用程序.为了方便起见,我对文本和方程式使用了标记文件,并且希望在两者之间有一个绘图(例如,在RMarkdown中写入大多数内容).由于shiny 应用程序更复杂(我使用shinydashboard,包括它的许多独特功能),我更喜欢不使用first link中描述的方法的选项.

一个最起码的工作示例是:

R文件:

library(shiny)

ui <- shinyUI(
  fluidPage(
    includeMarkdown("RMarkdownFile.rmd")
  )
)
server <- function(input, output) {}

shinyApp(ui, server)

和同一文件夹中的"RMarkdownFile.rmd":

This is a text

$$ E(x) = 0 $$ 

```{r, eval = T}
plot(rnorm(100))
```

Result:

Shiny App

Target

如果我编织rmd文件,我想要的是输出:

具体来说,我想得到代码块的判断结果(绘图…),我想得到渲染的数学方程.

有什么 idea 吗?

Edited Solution

由于@Bunk的输入,我 Select 使用命令knit将所有rmd个文件渲染为md个文件,然后将md个文件包含在shiny 的应用程序中(我使用markdown而不是html,因为后者产生了一些等式问题).最后,includeMarkdown被包裹在withMathJax中,以确保方程式的正确显示.

最后的代码如下所示:

library(shiny)
library(knitr)

rmdfiles <- c("RMarkdownFile.rmd")
sapply(rmdfiles, knit, quiet = T)

ui <- shinyUI(
    fluidPage(
        withMathJax(includeMarkdown("RMarkdownFile.md"))
  )
)
server <- function(input, output) { }

shinyApp(ui, server)

推荐答案

我认为编织它和呈现UI应该是可行的.

library(shiny)
library(knitr)

ui <- shinyUI(
    fluidPage(
        uiOutput('markdown')
  )
)
server <- function(input, output) {
    output$markdown <- renderUI({
        HTML(markdown::markdownToHTML(knit('RMarkdownFile.rmd', quiet = TRUE)))
    })
}

shinyApp(ui, server)

R相关问答推荐

最优收敛

在与ggplot 2和网格的最佳匹配线上绘制箭头

如何将Rmarkdown中包含图像和文本的行的两个单元格与.PDF输出垂直对齐?

当y大于阈值和值范围时,在时间序列中突出显示区域

R图中的字体大小和字体样式(带有R底图)

根据列中的数字移动单元格位置

使用rlang s arg_match判断函数输入列表

在R中替换函数中的特定符号

用黄土法确定区间

用值序列对行进行子集化,并标识序列开始的列

删除列表中存储的数据帧内和数据帧之间的重复行

使用整齐的计算(curl -curl )和杂音

我如何才能找到FAMILY=POISSON(LINK=&Q;LOG&Q;)中的模型预测指定值的日期?

优化从每个面的栅格中提取值

如何在R中使用混合GAM模型只对固定的影响因素进行适当的预测?

在不对R中的变量分组的情况下取两行的平均值

如何阻止围堵地理密度图?

如何从嵌套数据中自动创建命名对象?在R中

长/纬点继续在堪萨斯-SF结束,整齐的人口普查

R-找出存在其他变量的各种大小的所有组合