[英]Why do I get "argument "output" is missing, with no default" when trying to make a sankey plot with R shiny and networkD3?
我正在嘗試通過 networkD3 示例在 R 中制作一個閃亮的應用程序。 我的代碼附在底部。
我從這個頁面得到了代碼。
當我嘗試運行它時,我收到此錯誤消息:
Error in shinyServer(function(input, output) { :
argument "output" is missing, with no default
問題:如何修復代碼以使其工作?
library(shiny)
library(networkD3)
data(MisLinks)
data(MisNodes)
shinyUI(fluidPage(
titlePanel("Shiny networkD3 "),
sidebarLayout(
sidebarPanel(
numericInput("opacity", "Opacity", 0.6, min = 0.1, max = 1, step = .1)
),
mainPanel(
tabsetPanel(
tabPanel("Simple Network", simpleNetworkOutput("simple")),
tabPanel("Force Network", forceNetworkOutput("force")),
tabPanel("Force Network with Legend & Radius", forceNetworkOutput("forceRadius")),
tabPanel("Sankey Network",
checkboxInput("sinksRight", "sinksRight", value = TRUE),
sankeyNetworkOutput("sankey")),
tabPanel("Reingold-Tilford Tree", radialNetworkOutput("rt"))
)
)
)
))
shinyServer(function(input, output) {
output$sankey <- renderSankeyNetwork({
URL <- "https://cdn.rawgit.com/christophergandrud/networkD3/master/JSONdata/energy.json"
Energy <- jsonlite::fromJSON(URL)
sankeyNetwork(Links = Energy$links, Nodes = Energy$nodes, Source = "source",
Target = "target", Value = "value", NodeID = "name",
fontSize = 12, nodeWidth = 30, sinksRight = input$sinksRight)
})
})
shinyApp(ui, server)
您應該將您的UI
分配給 ui,並將您的server
功能分配給一個名為server
的變量。 然后將它們作為參數傳遞到最后一行shinyApp(ui,server)
。 希望這可以幫助!
工作代碼:
library(shiny)
library(networkD3)
data(MisLinks)
data(MisNodes)
ui <- shinyUI(fluidPage(
titlePanel("Shiny networkD3 "),
sidebarLayout(
sidebarPanel(
numericInput("opacity", "Opacity", 0.6, min = 0.1, max = 1, step = .1)
),
mainPanel(
tabsetPanel(
tabPanel("Simple Network", simpleNetworkOutput("simple")),
tabPanel("Force Network", forceNetworkOutput("force")),
tabPanel("Force Network with Legend & Radius", forceNetworkOutput("forceRadius")),
tabPanel("Sankey Network",
checkboxInput("sinksRight", "sinksRight", value = TRUE),
sankeyNetworkOutput("sankey")),
tabPanel("Reingold-Tilford Tree", radialNetworkOutput("rt"))
)
)
)
))
server <- function(input, output) {
output$sankey <- renderSankeyNetwork({
URL <- "https://cdn.rawgit.com/christophergandrud/networkD3/master/JSONdata/energy.json"
Energy <- jsonlite::fromJSON(URL)
sankeyNetwork(Links = Energy$links, Nodes = Energy$nodes, Source = "source",
Target = "target", Value = "value", NodeID = "name",
fontSize = 12, nodeWidth = 30, sinksRight = input$sinksRight)
})
}
shinyApp(ui, server)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.