R Network Graph в Shiny не работает - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь отобразить различные графики на основе выпадающего ввода от пользователя. У меня есть другие входные данные работают. Это просто сетевой график, который не работает. Если я переключаю его на другой график, он работает; это просто сетевой график, который не работает.

    if(input$level == "function"){

  data = matrix(sample(0:1, 400, replace = TRUE, prob = c(0.8,0.2)), nrow = 20)
  network = graph_from_adjacency_matrix(data, mode='undirected', diag = F)

  plot(network, layout = layout.circle, main = "circle")
}

это все в пределах реактивной функции. Я также пытался использовать библиотеку igraph, а также библиотеку igraphinshiny

1 Ответ

0 голосов
/ 07 мая 2018

В следующем примере показан график сети или простой график из 5 точек в зависимости от выбранного варианта:

library(shiny)
library(igraph)
ui <- fluidPage(

  sidebarLayout(
    sidebarPanel(
      selectInput("graph", 
                  label = "Choose graph to display",
                  choices = c("Simple plot", "Network Graph"), 
                  selected = "Network Graph")), 
    mainPanel(
      plotOutput("myplot")
    )
  )

)

server <- function(input, output) {

  output$myplot <- renderPlot({

    # Plot Network graph is selected
    if (input$graph == "Network Graph"){
      data = matrix(sample(0:1, 400, replace = TRUE, prob = c(0.8,0.2)), nrow = 20)
      network = graph_from_adjacency_matrix(data, mode='undirected', diag = F)

      # plot simple graph of 5 points
      plot(network, layout = layout.circle, main = "circle")
    } else {
      plot(1:5)
    }
  })


}

shinyApp(ui, server)
...