R:我可以在一个闪亮的ui.R文件中包含一个R标记文件吗?

R:我可以在一个闪亮的ui.R文件中包含一个R标记文件吗?,r,shiny,knitr,R,Shiny,Knitr,我参考下面的代码示例。在我的例子中,我希望包含和R标记文件,而不是标记 下面是我的ui.R代码 library(markdown) shinyUI(fluidPage( titlePanel("Tourist expenditure for the year 2012 in Malta"), fluidRow( column(2, checkboxGroupInput("id1", "Analyse by",

我参考下面的代码示例。在我的例子中,我希望包含和R标记文件,而不是标记

下面是我的ui.R代码

library(markdown)
shinyUI(fluidPage(

    titlePanel("Tourist expenditure for the year 2012 in Malta"),

    fluidRow(
        column(2,
               checkboxGroupInput("id1", "Analyse by",
                                  c("Sex" = "1",
                                    "Age Group" = "2")
         )),
        column(6,
               h4('You entered'),
               verbatimTextOutput("oid1")
        ),
        column(4,
               includeMarkdown("intro.Rmd")
        )
    )
))
我的问题是intro.Rmd在嵌入shinyUI时不是编译的,而是在选择Knit HTML选项时按预期工作

是否有一种方法可以直接插入Rmd源文件


谢谢。

我过去也遇到过类似的问题,我知道两种解决方案:

  • 预编译.Rmd文件,并使用前面提到的函数包含标记或HTML

  • 从server.R文件中的shinny调用knitr(如果文档因shinny应用程序而更改),然后使用includeHTML()或类似函数包含编译的HTML/markdown代码


  • 尝试将其更改为
    intro.md
    。您是收到错误还是收到空白?你确定它在正确的文件夹中吗?@Elin:当我将.Rmd重命名为.md时,我得到了未编译的源代码。当我包含Knitr(index.html)的输出时,我得到了正确的结果,但得到了一个恼人的标记。Tou可以在以下位置查看项目的输出:。谢谢。更新:在指定yaml指令后,keep_md:是的,@Elin的建议有效。我仍然相信最好的解决方案是让shiny能够解析.Rmd,因为这是每次修改的源代码。如果每次都修改该文件,则应使用
    rmarkdown::render(“myfile.Rmd”)
    并将include括起来,但我也不认为在这种情况下,把它当作静态文件来包含最有意义。我认为从架构上讲,在服务器端执行
    rmarkdown::render(“myfile.Rmd”)
    可能更有意义。我使用了第二个选项,但当我使用
    includeHTML()
    时,datatables不会以编译的HTML格式以闪亮的方式呈现表,但在web浏览器中它可以工作。您能帮忙吗?您的意思是datatables不会在预览窗口中呈现html,而是在浏览器中查看应用时呈现html?如果是这样,我会称之为成功。RStudio的预览浏览器并不总是正确处理自定义CSS和Javascript。