我有一个绘图功能,用于绘制/保存数据框中的每一列。要将aes()
变量传递给 ggplot,我使用aes_string
下面的精彩命令。
plot <- function(df, column) {
y <- ggplot(df, aes_string(x="x", y="y", color=column, label="vector")) + geom_point() + theme_bw()
ggsave(y, file=paste("plots/plot_", column,".png",sep=""))
}
我现在想在文档scale_color_gradient2
中添加 as ,但我想将 设置为列的平均值。有没有类似的方法可以将此值传递给函数?我尝试了以下方法,结果将图形点设置为灰色。midpoint
z = y + scale_color_gradient2(midpoint = mean(column))
z = y + scale_color_gradient2(midpoint = mean(df$column))
我想我可以通过预先计算值并将其传递给函数来解决这个问题,但我想知道是否有一种简单aes_string()
的方法来做到这一点。
谢谢,扎克cp