我有两个绘制的数据集( df1
和 df2
)。
df1 = data.frame(x=c(1:10), y=c(1:10))
df2 = data.frame(x=c(0:13), y=c(0:13)^1.2)
# plot
plot(df1)
# add lines of another dataset
lines(df2)
df2
的一些值超出绘图范围,因此不可见。 (在这个例子中,我可以先绘制 df2
)。我通常会尝试找出我的数据的范围,如下所示。# manual solution
minX = min(df1$x, df2$x)
minY = min(df1$y, df2$y)
maxX = max(df1$x, df2$x)
maxY = max(df1$y, df2$y)
plot (df1, xlim=c(minX, maxX), ylim=c(minY, maxY))
lines(df2)
当有很多数据集时,这变得很烦人。我想知道,是否有更简单的方法来调整轴的范围。
在第一步中,R 自行查找轴范围。添加新数据集时,R 是否还可以调整轴范围?
最佳答案
您可以使用 range
来计算极限。
恕我直言,一个更好的解决方案:
df1 <- data.frame(x=c(1:10), y=c(1:10))
df2 <- data.frame(x=c(0:13), y=c(0:13)^1.2)
ll <- list(df1,df2)
ll <- lapply(1:length(ll),function(i) {res <- ll[[i]]; res$grp <- i; res})
df <- do.call("rbind",ll)
df$grp <- factor(df$grp)
library(ggplot2)
p1 <- ggplot(df,aes(x=x,y=y,group=grp,col=grp)) + geom_line()
p1
关于r - 在 R 中向绘图添加新曲线时调整 x 和 y 轴的限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13287537/