2013-03-13 128 views
-1

此代码将在一个窗口中显示几个图。由于每个图是根据每列X1到X13生成的。所以我想给as a main添加一个数字,用来绘制这个图的列的名字请看下面区分哪个是enter image description here如何为R中的每个图添加标题?

ref= read.table("D:\\AS_asc.txt", sep="",header=TRUE) 
sour1 = read.table("D:\\re.txt", sep="",header=TRUE) 
sour2= read.table("D:\\_asc.txt", sep="",header=TRUE) 
columns <- paste0("X", 1:13) 
par(mfrow=c(4,4)) 
lapply(
columns, 
function(column) 
    { 
    result1 <- (
    mean(ref[[column]]) - 
    ((sd(ref[[column]])/sd(sour1[[column]])) * mean(sour1[[column]])) + 
    ((sd(ref[[column]])/sd(sour1[[column]]) * sour1[[column]])) 
    ) # calculate using ref and sour1 
    result2 <- (( 
     mean(ref[[column]]) - 
     ((sd(ref[[column]])/sd(sour2[[column]], na.rm=TRUE)) * mean(sour2[[column]], na.rm=TRUE)) + 
    ((sd(ref[[column]])/sd(sour2[[column]], na.rm=TRUE) * sour2[[column]])) 
    )) # calculate using ref and sour2 
     plot(
    ref[[column]], 
    result1, 
    ylab = "[[column]]", 
    xlab = "[[column]]", 
    col = 2 
    ) 

    points(ref[[column]], ref[[column]], col = 'green') 
    points(ref[[column]], result2, col = 'blue') 
    } 
    ) 
+3

你就不能添加'主贴=(列)''你的情节()'命令里面? – 2013-03-13 18:54:57

+3

因为好奇心,你可能想要发布一些虚拟数据,并且你会暴露于处理这些任务的ggplot2/lattice方式。警告:没有回头路。 – baptiste 2013-03-13 19:11:54

+0

除了@baptiste所说的之外,你还真想看看'ggplot2',特别是'facet_wrap'和'facet_grid'。刻面是用于创建绘图网格的“ggplot2”专业术语,每个用于一个因子级别(分类变量)。 – 2013-03-13 21:13:52

回答

6

我敢肯定,你可以适应这个到你的代码,但它是那样简单作为添加main = paste(column)在您的剧情命令。

一个例子:

columns <- paste0("X" , 1:9) 
par(mfrow=c(3,3)) 
lapply(columns , function(column){ plot(1:10 , y = 1:10 , main = paste(column)) }) 

enter image description here

3

这是不是只需要添加此行函数内部,或许points调用后:

title(main=column) 
相关问题