重叠图中的不同长度

Different lengths in overlapping plot

我对这个情节有疑问,伙计们,也许你能想出一个解决方案。

所以我用红线绘制了 9 月份和 9 月份的收入天数。我也在同一张图表中绘制了 10 月和 Octubre 收入天数。

这就是我想要做的。

这就是我的 R 中发生的事情...

这是我用来将它们绘制在一起的代码,但由于它们具有不同的长度,因此绘图重叠确实令人困惑。

plot(as.Date(Septiembre$Date), cumsum(Septiembre$TMM), type="l", col="red" )
par(new=TRUE)
plot(as.Date(Octubre$Date), cumsum(Octubre$TMM), type="l", col="green" )

这是 Septiembre 和 Octubre 数据。

> Septiembre$Date
[1] "2015-09-24" "2015-09-26"
> Septiembre$TMM
[1] 720 540
> Octubre$Date
[1] "2015-10-01" "2015-10-03" "2015-10-09" "2015-10-10" "2015-10-11"
> Octubre$TMM
[1] 400 540 360 720 360

如果您计算了 x 和 y 的范围,那么您就可以得到合适的 window 大小。

## Ranges
xlim <- range(as.Date(Septiembre$Date), as.Date(Octubre$Date))
ylim <- range(0, sapply(list(Septiembre$TMM, Octubre$TMM), cumsum))

## Make the plot
plot(as.Date(Septiembre$Date), cumsum(Septiembre$TMM), type="l", col="red",
     xlim=xlim, ylim=ylim)
points(as.Date(Octubre$Date), cumsum(Octubre$TMM), type="l", col="green" )

我不确定这是否是您要查找的范围。这是另一种可能性,其中日期被转换为整数并在每种情况下标准化为从 0 开始。

## Normalize the date data
dateRanges <- lapply(list(Septiembre$Date, Octubre$Date), function(x) {
    res <- as.integer(as.Date(x))
    res - res[1]
})

xlim <- c(0, max(unlist(dateRanges)))
ylim <- range(0, sapply(list(Septiembre$TMM, Octubre$TMM), cumsum))

## Make the plot
plot(dateRanges[[1]], cumsum(Septiembre$TMM), type="l", col="red",
     xlim=xlim, ylim=ylim, xaxt='n', xlab="Date", ylab="")
par(new=TRUE)
plot(dateRanges[[2]], cumsum(Octubre$TMM), type="l", col="green",
     xlim=xlim, ylim=ylim, axes = FALSE, xlab="", ylab="")