ggvis интегрирован в функцию

Я пытаюсь создать базовую функцию, в которой вы вводите валюту, а функция возвращает линейную диаграмму ggvis, но проблема возникает из-за кавычек

Текущий код:

ggcurr<-function(curr="AUD"){
    fx<-read.csv("rates.csv")
    fx$date<-as.character(fx$date)
    fx$date<-as.POSIXct(fx$date)
    gginput<-noquote(paste("~",curr,sep=""))

    fx%>%ggvis(~date,gginput)%>%
    layer_lines()
}

Этот код просто возвращает прямую линию.

Я также попытался использовать as.name () безрезультатно

Большое спасибо!

Все решено, функция синтаксического анализа заработала, спасибо всем, кто помог!


person James Maine    schedule 17.07.2015    source источник
comment
Что вы имеете в виду под кавычками? А что в read.csv?   -  person tumultous_rooster    schedule 17.07.2015
comment
попробуйте ggvis(~date,parse(text=paste("~",curr,sep="")))   -  person NicE    schedule 17.07.2015
comment
Приношу свои извинения, проблема с кавычками заключается в том, что ggvis не будет работать, если это данные% ›% ggvis (~ x, ~ y), а не правильная форма данных%›% ggvis (~ x, ~ y) .csv это садовый вариант df с кросс-курсами для многих валют и датами.   -  person James Maine    schedule 17.07.2015


Ответы (1)


В дополнение к решению, которое вы нашли с parse, это то, для чего может использоваться функция prop из ggvis.

Например, если вы хотите взять этот простой линейный график

mtcars %>% ggvis(~mpg, ~wt) %>% layer_lines()

с переменной y wt, заданной в виде строки, как вы это делаете в своей функции, это будет выглядеть так:

curr = "wt"
mtcars %>% ggvis(~mpg, prop("y", as.name(curr))) %>%
    layer_lines()
person aosmith    schedule 17.07.2015