2017-09-15 5 views
0

J'ai un document brillant qui devrait expliquer certaines maths et calculer le résultat avec des entrées brillantes. Si je tricote le document, tout fonctionne jusqu'à ce que je modifie une entrée et que le code mathjax/latex soit affiché à la place des équations rendues appropriées.Rendu des équations dynamiques en brillant

Un exemple de travail minimum est ce (test.Rmd)

--- 
output: html_document 
runtime: shiny 
--- 

```{r,,echo=F} 
library(shiny) 
``` 

```{r,echo=F} 
numericInput("a", "A", value = 100, min = 0, max = 10000) 
numericInput("b", "B", value = 120, min = 0, max = 10000) 
a <- reactive(input$a) 
b <- reactive(input$b) 

renderText(withMathJax({ 
    formula <- "$$ 
\\begin{split} 
A &= %.0f \\\\ 
B &= %.0f 
\\end{split} 
$$" 
    text <- sprintf(formula, a(), b()) 

    return(text) 
})) 
``` 

Ce que j'attends de voir est ce (que je reçois avant que je change une entrée)

Correct Picture

après avoir changé A ou B, je reçois ce

Broken Picture

Une idée sur la façon de résoudre ce problème ou ce que j'ai mal fait?

Répondre

1

Voici un exemple de travail. Assurez-vous de le voir dans un navigateur.

library(shiny) 

ui <- list(
    numericInput("a", "A", value = 100, min = 0, max = 10000), 
    numericInput("b", "B", value = 120, min = 0, max = 10000), 
    uiOutput('out') 
) 

server <- function(input, output) 
{ 
    a <- reactive(input$a) 
    b <- reactive(input$b) 
    output$out <- renderUI({ 
    formula <- "$$ 
     \\begin{split} 
     A &= %.0f \\\\ 
     B &= %.0f 
     \\end{split} 
     $$" 
    text <- sprintf(formula, a(), b()) 
    withMathJax( 
     tags$p(text) 
    ) 
    }) 
} 

shinyApp(ui, server)