我正在创建一个项目,希望将交互式直方图嵌入到从 R Markdown 文档生成的 html 页面中。由于与交互式直方图的数量和潜在的使用量相关的成本,Shiny 不是这个项目的可行方法,所以我试图为交互式直方图嵌入一个 html 小部件,可以使用Crosstalk和Plotly进行过滤. 到目前为止,我已经能够在使用 in 中的group
参数时创建一个可过滤的直方图ggplot(aes())
(reprex 包含在下面)。最终,我想使用多个变量来过滤直方图,如果我使用group
参数会导致问题。
有没有一种方法可以在不使用参数的情况下使用 Crosstalk 和 Plotly 过滤直方图group
?
谢谢!
library(crosstalk)
library(plotly)
library(reprex)
shared_mtcars <- SharedData$new(mtcars)
bscols(widths = c(3, NA),
list(
filter_checkbox("cyl", "Cylinders", shared_mtcars, ~cyl, inline = TRUE)
),
plotly::ggplotly(shared_mtcars %>%
ggplot(aes(x = mpg, group = factor(cyl))) +
geom_histogram(fill = "pale green",
color = "black") +
theme(legend.position = "none"))
)