Uso de ggplot () dentro de outra função em R
Estou tentando escrever uma função de plotagem simples, usando a biblioteca ggplot2. Mas a chamada para o ggplot não encontra o argumento da função.
Considere umdata.frame
chamadomeans
que armazena duas condições e dois valores médios que quero plotar (a condição aparecerá no eixo X, significa no Y).
library(ggplot2)
m <- c(13.8, 14.8)
cond <- c(1, 2)
means <- data.frame(means=m, condition=cond)
means
# The output should be:
# means condition
# 1 13.8 1
# 2 14.8 2
testplot <- function(meansdf)
{
p <- ggplot(meansdf, aes(fill=meansdf$condition, y=meansdf$means, x = meansdf$condition))
p + geom_bar(position="dodge", stat="identity")
}
testplot(means)
# This will output the following error:
# Error in eval(expr, envir, enclos) : object 'meansdf' not found
Então parece que o ggplot está chamandoeval
, que não consegue encontrar o argumentomeansdf
. Alguém sabe como eu posso passar com êxito o argumento da função para o ggplot?
(Nota: Sim, eu poderia chamar a função ggplot diretamente, mas no final, espero que minha função de plotagem faça coisas mais complicadas! :))