[英]rgl package with rsconnect package
使用rgl軟件包在ShinyR上繪制3D圖片時遇到一些問題。 我的代碼在本地Rstudio上運行時沒有錯誤或問題。 3D圖確實確實如我預期的那樣顯示。 但是,每當我通過rsconnect軟件包將其發布到Shinyapps.io時,該3D圖都不會顯示在網站上。 同時,沒有錯誤發生。 這讓我很困惑。 我在互聯網上尋找解決方案,並上傳了一個簡單的示例進行測試。 這是代碼:
library(shiny)
library(rgl)
library(rglwidget)
options(rgl.useNULL=TRUE)
open3d(useNULL = TRUE)
ids <- plot3d(rnorm(100), rnorm(100), rnorm(100))[1]
scene <- scene3d()
rgl.close()
ui <- (fluidPage(
checkboxInput("chk", label = "Display", value = FALSE),
rglwidgetOutput("wdg")
))
server <- function(input, output, session) {
options(rgl.useNULL = TRUE)
save <- options(rgl.inShiny = TRUE)
on.exit(options(save))
output$wdg <- renderRglwidget({
rglwidget(scene)
})
}
if (interactive())
shinyApp(ui = ui, server = server)
最后,出現錯誤信息:
rgl.init(initValue,onlyNULL)中的警告:
RGL:無法打開X11顯示屏
警告:“ rgl_init”失敗,使用rgl.useNULL = TRUE運行
rglwidget軟件包中的功能已移至rgl。
附件包:“ rglwidget”
以下對象被'package:rgl'屏蔽:
playwidget,rglwidget
value [3L]錯誤:app.R未返回Shiny.appobj對象。
調用:本地... tryCatch-> tryCatchList-> tryCatchOne->
如您所見,錯誤消息中提到了“ X11”,我在Google上搜索這所有X11問題均與ubanto或mac環境(mine為win10)有關。 因此,我找不到有用的答案。 我也嘗試過capabilities()函數,但結果只是說我的X11是False。 我無法弄清楚哪一部分出錯了,因此我列出了所有信息。
非常感謝任何人可以提供幫助或提供更多信息。
您不應該使用rglwidget
包; 它已經過時了。
有關X11的警告即將到來,因為您正在嘗試在Shiny服務器上設置本地窗口。 為避免這樣做,請在 library(rgl)
之前使用options(rgl.useNULL = TRUE)
library(rgl)
。 如果執行此操作,則在open3d
調用中將open3d
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.