闪亮的主面板输出空白; RStudio查看器更新

时间:2017-09-29 00:31:17

标签: r shiny

当我运行我的闪亮应用程序时,mainPanel不会渲染process_map图像。但是,在RStudio Viewer中,图像呈现。我已经研究过这个问题,感觉问题在于process_map()调用,因为我没有其他调用的这些问题(简单的ggplot / plot)。我不相信outputPlot / renderPlot适合process_map()函数。但是,我无法确定正确的呼叫或功能性工作。

这是一个可重复的例子。提前感谢您的专业知识。

#POTENTIAL PACKAGE REQUIREMENTS
#install.packages("bupaR")
#install.packages("edeaR")
#install.packages("eventdataR")
#install.packages("processmapR")
#install.packages("processmonitR")
#install.packages("xesreadR")
#install.packages("petrinetR")


library(bupaR)
library(shiny)

#Create a data frame
key<-rep("DISCHARGEDATE", 5)
time<-seq(as.POSIXct("2017-09-20 12:07:00",format="%Y-%m-%d %H:%M:%S"),
by="min",length.out = 5)
patient<-seq(1,5)

df<-as.data.frame(cbind(key=as.character(key),time=as.character(time),
patient=as.character(patient)), stringsAsFactors = FALSE)
df$time<- as.POSIXct(df$time, format="%Y-%m-%d %H:%M:%S")

#create a simple log
s.Log<-bupaR::simple_eventlog(eventlog=df, 
                              case_id="patient",
                              activity_id="key",
                              timestamp="time") 
#shiny
ui <- fluidPage(

mainPanel(
         plotOutput("process_map")
      )
   )

server <- function(input, output) {

   output$process_map <- renderPlot({

     process_map(s.Log)

   })
}

shinyApp(ui = ui, server = server)}

1 个答案:

答案 0 :(得分:1)

process_map给出了类grViz的输出。因此,您必须使用grVizOutput中的uirenderGrViz server中的DiagrammeR library(bupaR) library(shiny) library(DiagrammeR) #Create a data frame key<-rep("DISCHARGEDATE", 5) time<-seq(as.POSIXct("2017-09-20 12:07:00",format="%Y-%m-%d %H:%M:%S"), by="min",length.out = 5) patient<-seq(1,5) df<-as.data.frame(cbind(key=as.character(key),time=as.character(time), patient=as.character(patient)), stringsAsFactors = FALSE) df$time<- as.POSIXct(df$time, format="%Y-%m-%d %H:%M:%S") #create a simple log s.Log<-bupaR::simple_eventlog(eventlog=df, case_id="patient", activity_id="key", timestamp="time") #shiny ui <- fluidPage( mainPanel( #plotOutput("process_map") grVizOutput("process_map") ) ) server <- function(input, output) { output$process_map <- renderGrViz({ process_map(s.Log) }) } shinyApp(ui = ui, server = server) 。我修改了你的代码,如下所示,它给出了process_map图像。

</body>

希望它有所帮助!