在R中闪亮的仪表板应用程序中显示LaTeX方程式

Söl*_*lvi 5 r r-markdown shiny shinydashboard

我想在我闪亮的仪表板应用程序中显示带有LaTeX方程的Rmd文件.我使用includeMarkdown()和遇到了问题includeHTML().这是我正在努力实现的简化应用程序.这是我的app.R:

library(shinydashboard)
ui <- dashboardPage(
    dashboardHeader(title='My test application'),
    dashboardSidebar(
        sidebarMenu(
            menuItem("Theory", tabName = "theory", icon = icon("book"))
        )
    ),
    dashboardBody(

        tabItems(

            tabItem(tabName="theory",
                    includeMarkdown("Theory.Rmd")
                    #includeMarkdown("Theory.md")
                    #includeHTML("Theory.html")
            )
        )    
    )
)

server <- function(input, output){

}

shinyApp(ui = ui, server = server)
Run Code Online (Sandbox Code Playgroud)

我的Theory.Rmd文件:

---
title: "Theory"
output: 
  html_document:
    mathjax: "http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
---
Here is an equation:

$$Q = a(h ? c)^b$$ 
Run Code Online (Sandbox Code Playgroud)

请注意,为了运行应用程序,必须将Theory.Rmd和app.R保存在同一目录(例如工作目录)中,手必须具有这些确切的名称.要获取Rmd文件的markdown Theory.md文件,只需执行以下操作:

library(knitr)
knit("Theory.Rmd","Theory.md")
Run Code Online (Sandbox Code Playgroud)

要获取该Theory.html文件,只需按下Theory.Rmd文件中的Knit to HTML按钮即可

在我的浏览器或RStudio窗口中运行我的应用程序时,includeMarkdown("Theory.Rmd")或者includeMarkdown("Theory.md"),不要渲染方程式,但它在理论菜单项中默认启动,如下所示: 在此输入图像描述 但是使用includeHTML("Theory.html")方程式可以正确渲染,但屏幕显示会缩短,默认情况下它不会在任何菜单项中启动,如下所示:在此输入图像描述

但是当点击理论时,我得到了正确的渲染方程式: 在此输入图像描述

有没有办法来解决这个问题?非常感谢!

小智 5

也可以包裹includeMarkdown()withMathJax(),所以你不需要改变你的.md-file:

withMathJax(includeMarkdown("Theory.md"))
Run Code Online (Sandbox Code Playgroud)