如何使用函数在R

时间:2016-01-25 19:13:18

标签: r plot ggplot2

我是初学者,试图在ggplot2中构建多个图。使用R

中的mtcars数据集
library(datasets)
data (mtcars)
library (ggplot2)
## convert to factor some variables to avoid problems
factors<-c(2,9,10,11)
mtcars[,factors]<-lapply(mtcars[,factors],factor)

我想绘制mpg与所有其他变量的关系,除了每个绘图中颜色绘制的am变量。每个情节都如下:

g1<- ggplot(mtcars, aes(x=mpg, y=cyl, color=am)) + geom_point(shape=1)
g2<- ggplot(mtcars, aes(x=mpg, y=disp, color=am)) + geom_point(shape=1)
g3...

只有y轴从一个图变为另一个图。我已经完成了从g1到g9的绘图,y轴是以下任何一种:

variables<- c ("cyl","disp","hp","drat","wt","qsec","vs","gear","carb") 

我确信必须有一种更优雅的方式来生成所有9个图,但无法弄清楚 有什么帮助吗?

1 个答案:

答案 0 :(得分:0)

如果您想要g1 ... g_n中的绘图:

g <- lapply(variables, function(var) {
  ggplot(mtcars, aes_string(x="mpg", y=var, color="am")) + geom_point(shape=1) 
})
names(g) <- paste0("g", seq(g))
list2env(g, .GlobalEnv)