Hola,
Otra alternativa que puedes utilizar es esta:
#------------------------------
grafico <- function(dt, varx) {
dt <- as.data.frame(dt)
p <- ggplot(dt, aes( x= Date, y= dt[,varx] ) )
p + geom_point()
## un montón de código de configuración del gráfico, etc
}
grafico(datos, 2 )
#------------------------------
Y mira los problemas que presenta ggplot al incluirlo dentro de otra
función...:
http://stackoverflow.com/questions/5106782/use-of-ggplot-within-another-function-in-r
Saludos,
Carlos Ortega
www.qualityexcellence.es
El 28 de abril de 2017, 23:51, Carlos J. Gil Bellosta <cgb en
datanalytics.com>
escribió:
> Usa aes_string en lugar de aes. Mira la documentación.
>
> 2017-04-28 23:39 GMT+02:00 Rubén Coca <ruben.coca en gmail.com>:
>
> > Hola a todos,
> > Partiendo de:
> >
> > library(ggplot2); library(data.table)
> >
> > datos <- data.table(Date =
seq.Date(as.Date("2017-01-01"),
> > as.Date("2017-01-10"),
> > by = "day"),
> > V1 = rnorm(10),
> > V2 = rnorm(10))
> >
> > Quiero crear una función para pintar un gráfico cuyos argumentos sean
el
> > data table y la variable a pintar en el eje de las x. Se me ocurre
ésta:
> >
> > grafico <- function(dt, varx) {
> > ggplot(dt, aes(x = Date, y = varx)) +
> > geom_point()
> > ## un montón de código de configuración del gráfico, etc
> > }
> >
> > grafico(datos, V1)
> >
> > Pero ggplot dice que no encuentra V1...
> > Error in eval(expr, envir, enclos) : object 'V1' not found
> > In addition: Warning message:
> > In eval(expr, envir, enclos) : restarting interrupted promise
evaluation
> >
> > Alguna sugerencia o nuevo enfoque?
> > Muchas gracias
> >
> > Rubén
> >
> > [[alternative HTML version deleted]]
> >
> > _______________________________________________
> > R-help-es mailing list
> > R-help-es en r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-help-es
> >
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
--
Saludos,
Carlos Ortega
www.qualityexcellence.es
[[alternative HTML version deleted]]