2016-01-14 25 views
0

假设下面的数据帧ggvis多个可变的选项

mydata = data.frame(
date = seq.Date(from = as.Date('2012-01-01'),to = as.Date('2015-6-01'), 'months'), 
name = 'a', 
var1 = sample(seq(from = 0, to = 1000, by = 1), size = 42, replace = TRUE), 
var2 = sample(seq(from = 0, to = 1000, by = 1), size = 42, replace = TRUE), 
var3 = sample(seq(from = 0, to = 1000, by = 1), size = 42, replace = TRUE), 
stringsAsFactors = FALSE) 

在我目前的数据集我有更多的名字,我选择哪个ggvis应该选择列表打印,我想知道,如果它是可以选择哪些列代表(目前我只代表一个做y =〜var1)

回答

1

我找到了解决方案。我使用gather()将我的所有列转换为两列(变量和值),然后我应用了这样一个过滤器,将数据转换为长格式:

ggvis(x = ~as.character.Date(date), y = ~value)%>% 
    filter(variable %in% eval(input_select(choices = as.character(long.df$var)))) 
)%>% 
    layer_lines(stroke = ~nombre_centro)