2

我想为多个变量制作直方图。我使用了以下代码:

set.seed(2)
dataOne <- runif(10)
dataTwo  <- runif(10)
dataThree <- runif(10)
one <-  hist(dataOne, plot=FALSE)
two  <-  hist(dataTwo, plot=FALSE)
three  <- hist(dataThree, plot=FALSE)
plot(one, xlab="Beta Values", ylab="Frequency",
     labels=TRUE, col="blue", xlim=c(0,1))
plot(two, col='green', add=TRUE)
plot(three, col='red', add=TRUE)

但问题是它们相互覆盖,如下图所示。

我只是希望它们相互添加(显示条相互重叠),即不重叠/不相互覆盖。我怎样才能做到这一点 ?

在此处输入图像描述

4

2 回答 2

0

尝试将最后三行替换为:

plot(One, xlab = "Beta Values", ylab = "Frequency", col = "blue")
points(Two, col = 'green')
points(Three, col = 'red')

第一次需要调用plot。但是下次您调用 plot 时,它将开始一个新的绘图,这意味着您丢失了第一个数据。points相反,您想使用散点图或使用折线图向其添加更多数据lines

于 2013-10-09T10:24:02.597 回答
0

目前尚不清楚您在这里寻找什么。

一种方法是将绘图放置在单独的绘图空间中:

par("mfcol"=c(3, 1))
hist(dataOne, col="blue")
hist(dataTwo, col="green")
hist(dataThree, col="red") 
par("mfcol"=c(1, 1))

这就是你所追求的吗?

在此处输入图像描述

于 2019-05-10T22:17:50.473 回答