首页 > 解决方案 > 用于交互式 3D 直方图的 R Shiny HTMLWidget

问题描述

我想在 R Shiny 应用程序中包含一个 3D动态(即可以通过移动绘图来改变其视角)直方图小部件。

不幸的是,直到现在我都没有找到。

到目前为止,我的搜索结果:使用threejs(例如这里在CRAN 上和那里在GitHub 上)可以使用许多不同的表示(散点图、表面等),但没有3D直方图。plot3D 和 plot3Drgl 没有任何 R Shiny 对应项。

除非某些东西已经存在,否则我的意图是从 vis.js 的一个子库(即graph3d )创建一个HTMLWidget

你对这个问题有什么看法?

此致,

奥利维尔

标签: rshiny3dhistogramhtmlwidgets

解决方案


有可能plot3Drgl。这是一个例子。

library(plot3Drgl)
library(shiny)

options(rgl.useNULL = TRUE)

ui <- fluidPage(
  rglwidgetOutput("myWebGL")
)

server <- function(input, output) {
  save <- options(rgl.inShiny = TRUE)
  on.exit(options(save))
  output$myWebGL <- renderRglwidget({
    try(rgl.close())
    V <- volcano[seq(1, nrow(volcano), by = 5), 
                 seq(1, ncol(volcano), by = 5)]  # lower resolution
    hist3Drgl(z = V, col = "grey", border = "black", lighting = TRUE)
    rglwidget()
  })  
}

shinyApp(ui, server)

推荐阅读