R 使用列中的值创建ggvis复选框

R 使用列中的值创建ggvis复选框,r,statistics,ggvis,R,Statistics,Ggvis,我最近一直在处理一些相关数据,试图使其与ggvis交互: areas_data %>% ggvis(~Bacilli, ~Actinobacteria) %>% layer_points(size := 50, opacity := 0.5, fill = ~area) 我知道当我需要创建一个交互式元素时,我应该映射列的名称。但是,当我想将交互元素映射到单个列中的值时,我不确定该怎么办。我目前正在尝试为上图中的填充值设置一个复选框。我已经编写了代码的开头,但无法计算出将列的值映射

我最近一直在处理一些相关数据,试图使其与ggvis交互:

areas_data %>%
ggvis(~Bacilli, ~Actinobacteria) %>%
layer_points(size := 50, opacity := 0.5, fill = ~area)

我知道当我需要创建一个交互式元素时,我应该映射列的名称。但是,当我想将交互元素映射到单个列中的值时,我不确定该怎么办。我目前正在尝试为上图中的填充值设置一个复选框。我已经编写了代码的开头,但无法计算出将列的值映射到复选框的每个元素的函数。我试图得到的效果是,我将能够以交互方式为我感兴趣的身体部位着色。我已经成功设置了复选框,但将其链接到数据是我遇到的难题

areas_data %>%
ggvis(~Bacilli, ~Actinobacteria) %>%
layer_points(size := 50, opacity := 0.5, fill := input_checkboxgroup(
choices = unique(areas_data$area),
label = "Select areas to colour",
map = function(val) {
# ?
}))

您可以使用
filter
select
ggvis
/
dplyr
包)将选择限制在感兴趣的列中的因素。由于我刚开始探索这些方法,我可能会首先分解数据帧(这对我来说现在更清楚)。但我确信这可以在
ggivs
函数中完成

areas_data <- filter(areas_data, Variable=="value" | Variable=="value")

你在找类似的东西吗?如果是,您可以看到代码。希望这能对你有所帮助。有点,我已经看了一些闪亮的例子,但我现在有点困惑于如何使填充交互并将其映射到专栏中的因素,而不仅仅是将其作为专栏的一般名称。我有兴趣尝试生成一个完全交互的在线情节,我可以很容易地在代码中对数据进行子集,我发现真正棘手的事情是使用复选框进行过滤。
areas_data <- droplevels(areas_data)
areas_data %>$
ggvis(~Bacilli, ~Actinobacteria) %>%
layer_points(size := 50, opacity := 0.5, fill := input_checkboxgroup(
choices = unique(areas_data$area),
label = "Select areas to colour",
map = function(val) {
# ?
}))