我有两个绘制的数据集(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)
Run Code Online (Sandbox Code Playgroud)
某些值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)
Run Code Online (Sandbox Code Playgroud)
当拥有许多数据集时,这会变得很烦人.我想知道,如果有一种更简单的方法来调整轴的范围.在第一步中,R自己找到轴范围.当添加新数据集时,是否还有一种方法可以调整轴范围?
你总是可以编写一个函数:
plotline <- function(df1,df2) {
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)
}
Run Code Online (Sandbox Code Playgroud)
然后你只需这样做:
plotline(firstdf,seconddf)
Run Code Online (Sandbox Code Playgroud)
如果您想变得更奇特,您甚至可以包含参数...
并将其传递给绘图调用。