Невозможно запустить блестящее приложение, используя grVizOutput () и renderGrViz () - PullRequest
3 голосов
/ 22 января 2020

Мне действительно очень нравится использовать и создавать графики в DiagrammeR. Я могу создать их в RStudio. Недавно я готовил блестящее приложение для включения графика с использованием DiagrammeR (функция grViz), я проверил на github и нашел примеры того, как сделать то же самое (см. здесь ).
Однако я пытался, но не смог получить вывод в приложении Shiny. Пожалуйста, найдите приведенный ниже код, который я пытаюсь (app.R):

library(DiagrammeR)
library(shiny)

diagram <- "
digraph {

      # graph attributes
      graph [overlap = true]

      # node attributes
      node [shape = box,
      fontname = Helvetica,
      color = blue]

      # edge attributes
      edge [color = gray]

      # node statements
      A; B; C; D; E
      F [color = black]

      # node attributes
      node [shape = circle,
      fixedsize = true,
      width = 0.9]

      # node statements
      1; 2; 3; 4; 5; 6; 7; 8

      # edge statements
      A->1; B->2                   // gray
      B->3 [color = red]           // red
      B->4                         // gray
      C->A [color = green]         // green
      1->D; E->A; 2->4; 1->5; 1->F // gray
      E->6; 4->6; 5->7; 6->7       // gray
      3->8 [color = blue]          // blue
      }
"

# Shiny app
server <- function(input, output) {
    output$diagram <- renderGrViz({
        grViz({
            diagram
        })
    })
}

ui <- fluidPage(
    grVizOutput('diagram', width = "100%", height = "760px") 
)

shinyApp(ui = ui, server = server)

Я использую R версии 3.6.0, с блестящей версией 1.4.0, DiagrammeR версии 1.0.5 на Windows 10 в версии Rstudio 1.2.1335. При выполнении вышеуказанного кода я всегда получаю следующую ошибку, и приложение Shiny не открывается.

> runApp()

Listening on http://127.0.0.1:4391
Warning: Error in htmlwidgets::shinyRenderWidget: unused argument (evn = env)
  50: renderGrViz
  49: server [C:\Users\HomeUser\Documents\RWorkSpace\SampleApp/app.R#46]
Error in htmlwidgets::shinyRenderWidget(expr = expr, outputFunction = grVizOutput,  : 
  unused argument (evn = env)

Кто-нибудь может подсказать, что не так с кодом выше?

1 Ответ

1 голос
/ 22 января 2020

Я получил то же сообщение об ошибке, что и вы, но когда я понизил пакет DiagrammeR до версии 1.0.1, все работало нормально.

library(devtools)
install_version("DiagrammeR", version = "1.0.1", repos = "http://cran.us.r-project.org")
...