#r #shiny #mathjax #shinyapps
#r #блестящий #mathjax #shinyapps
Вопрос:
Вот блестящее приложение, которое отображает уравнение LaTeX с помощью MathJax. Когда это приложение запускается локально, отображаются все три уравнения (для целей тестирования это уравнения в пределах a renderTable
, a renderText
и simply p
).
Однако при развертывании в Shinyapps.io , единственное отображаемое уравнение — это то, которое вызывается в p
теге.
library(shiny)
eq <- "$$ \frac{numerator}{denominator} \!$$"
ui <- {
fluidPage(
withMathJax(),
# simple tableOutput - not rendered
tableOutput('table'),
# simple textOutput - not rendered
textOutput('text'),
# no actual rendering required - works properly
p(eq)
)
}
server <- function(input, output, session) {
output$text <- renderText(eq)
output$table <- renderTable({
data.frame(
v1 = 'simple equation',
v2 = eq)
})
}
shinyApp(ui, server)
Тот факт, что уравнение в p
теге отображается правильно, похоже, исключает идею о том, что есть какая-то проблема с запросами GET на сервер для Javascript MathJax (вы можете видеть, как проходят запросы).
Я также удалил кэшированные данные из браузера локально (протестировано в Firefox и Chrome), и уравнения по-прежнему отображаются нормально.
Интересно, что проверка локальной версии показывает соответствующие элементы HTML (например, td
для таблицы), заключенные в a <div class='MathJax_Display'>
, тогда как этот div не найден в Shinyapps.io версия.
В журналах нет проблем, которые появляются в журналах; вот информация о журнале (обратите внимание на версию R; я еще не смог протестировать на R 4.0.2):
- Версия сервера: 1.8.4.1-20
- Язык: en_US.UTF-8
- Версия R: 3.6.0
- блестящая версия: 1.5.0
- версия rmarkdown: (отсутствует)
- версия httpuv: 1.5.4
- версия knitr: (отсутствует)
- версия jsonlite: 1.7.0
- Версия RJSONIO: (отсутствует)
- версия htmltools: 0.5.0
- Использование pandoc: /opt/connect/ext/pandoc2
- Использование jsonlite для обработки JSON