在函数内部调用ggsave

时间:2013-05-28 13:53:00

标签: r

我正在尝试绘制从CSV文件集合中派生的数据,但我似乎在使用函数中的ggplot和ggsave时遇到了一些麻烦。尽管在函数中已经定义了一个数据帧,但ggsave会抱怨以下错误:

Error in eval(expr, envir, enclos) : object 'dataframe' not found  
Calls: process ... sapply -> lapply -> eval.quoted -> lapply -> FUN ->
eval

我发现一些论坛指的是R范围内的奇怪,但我看不出ggplot是如何找不到之前定义的几行变量的。

功能代码是:

process <- function(path) {
    ...
    byhour <-table(audit$method, audit$hour)

    dataframe <- data.frame(byhour)
    dataframe$time <- strptime(dataframe$Var2, "%Y-%m-%d %H:%M:%S")

    basename <- file_path_sans_ext(path)
    plotname <- paste0(basename, ".jpg")

    plot <- ggplot(dataframe, aes(dataframe$time, Freq)) + geom_bar(stat="identity") + scale_x_datetime()
    ggsave(plot, file=plotname)
}

0 个答案:

没有答案