0

我正在绘制多个数据系列。

colos=c('red','green','purple','pink','brown')
par(new=F)
for (i in 1:5)
{
  plot(dat[[i+1]],col=colos[i],cex=marksize,xlab='Reading #',ylab = 'Current')
  par(new=T)
}

我的情节是这样的:带有坏轴标签的 R 图

有没有办法可以在每次迭代时覆盖绘图轴,但不覆盖绘制点?

4

2 回答 2

2

您可能想改用linesorpoints函数。这是我通常如何解决此问题的示例。这样,您只能在现有图的顶部覆盖点,而不是在另一个图上绘制一个图。

plot用您的原始调用绘制第一个,然后lapply在其上覆盖其他列的点。

set.seed(1)
dat <- data.frame(replicate(5, sample(10)))
colos <- c('red','green','purple','pink','brown')
plot(dat[[1]], col = colos[1], xlab = 'Reading #',   
     ylab = 'Current', ylim = range(as.matrix(dat)))
invisible(lapply(2:ncol(dat), function(i) points(dat[[i]], col = colos[i])))

在此处输入图像描述

于 2014-10-25T21:14:02.977 回答
2

xaxt使用和关闭轴yaxt

例如:

plot(1:10)
par(new=TRUE)
plot(1:10, rnorm(10), xaxt="n", yaxt="n", xlab="", ylab="", type="l")
axis(side=4)

在此处输入图像描述

于 2015-02-14T20:53:29.163 回答