2015-04-04 3 views
4

ggvis автоматически меняет свой сюжет на основе столбца факторов, который я передаю. Поэтому, если мой фактор-столбец был назван «областью», я мог бы написать это, и он будет выполнен отлично.Пропускание имени столбца для заполнения в виде строки с ggvis

names = c("Bacilli", "Actinobacteria", "area") 
b_counts <- c(1,5,8,100,34,3) 
a_counts <- c(1,3,11,55,67,11) 
area <- c("Gut", "Skin", "Gut", "Gut", "Skin", "Oral") 
rel_data <- data.frame(b_counts, a_counts, area) 
names(rel_data) <- names 

library(ggvis) 
library(dplyr) 

rel_data %>% ggvis(x = input_select(names(rel_data[,-3]), map = as.name, label = "X Axis"), 
       y = input_select(names(rel_data[,-3]), map = as.name, label = "Y Axis")) %>% 
    filter(area %in% eval(input_checkboxgroup(unique(rel_data$area), selected = "Gut"))) %>% 
    layer_points(fill = ~area) ### section of interest 

Однако, если я хочу, чтобы передать имя столбца в виде строки, я не могу заставить его работать. например

region <- "area" 
layer_points(fill = ~region) 

Я пробовал as.name, eval, quote и т. Д., Но я не могу заставить ничего работать. У кого-нибудь есть идеи?

ответ