【发布时间】:2017-03-02 22:27:49
【问题描述】:
(第一次使用 R 用户)所以我试图制作具有不同范围的 x 轴值的重叠直方图,我可以轻松地从 excel 文件中重现。我觉得我走在正确的轨道上,因为它绘制了直方图并在 3 上制作了 x 轴。我似乎无法弄清楚如何让轴(3)采用我想要的 xlim=。下面是我使用的代码和一张图片
## Open Xl Data into R
library(readxl)
dataset <- read_excel("location holder")
View(dataset)
## DLS subsets
Zone_1_DLS <- subset(dataset$DLS, dataset$Zone==1)
Zone_2_DLS <- subset(dataset$DLS, dataset$Zone==2)
Zone_3_DLS <- subset(dataset$DLS, dataset$Zone==3)
## ROP Subsets
Zone_1_ROP <- subset(dataset$DAVG_ROP, dataset$Zone==1)
Zone_2_ROP <- subset(dataset$DAVG_ROP, dataset$Zone==2)
Zone_3_ROP <- subset(dataset$DAVG_ROP, dataset$Zone==3)
## DLS Histograms
DLS1 <- hist(Zone_1_DLS)
DLS2 <- hist(Zone_2_DLS)
DLS3 <- hist(Zone_3_DLS)
## ROP Histograms
ROP1 <- hist(Zone_1_ROP)
ROP2 <- hist(Zone_2_ROP)
ROP3 <- hist(Zone_3_ROP)
## Plot Zone 1 Histograms
plot( ROP1, col=rgb(1,0,0,1), xlim=c(0,300), ylim = c(0,500))
plot( DLS1, axis(3),col=rgb(0,0,1,1), xlim=c(0,10), add = T)
axis(3,xlim=c(0,10))
【问题讨论】:
-
你可以使用
dput()上传你的数据集吗? -
@tbradley 太大了,不能粘贴,这里是 onedrive 链接
-
您应该花一些时间来创建一个最小的工作示例,如下所示:reproducible example
-
另外,
xlim不是axis函数的有效参数。你应该改用axis(3, at = c(1:10)) -
@tbradley 我做了一些示例代码,看看这是否有助于解释我的问题,
set.seed(42) p1 <- hist(rnorm(500,4)) p2 <- hist(rnorm(500,150)) plot( p1, col=rgb(0,0,1,1/4),xlim=c(0,200)) plot( p2, col=rgb(1,0,0,1/4), add=T)但是 p1 的范围限制在 (0-10) 之间,因为 p2 不一定有可定义的限制。所以任何时候我xlim=c(0,10)我都会切断我所有的 p2 数据,当绘制在上面时,所有 p1 数据都是不可用的,因为它在可以是 0-200 的 x 尺度上只有 0-10。