绘制多个图 - 重新缩放轴

时间:2017-07-11 18:09:58

标签: r plot

我发现,使用par(new = T)参数在多次绘图期间重新调整了轴。 举例说明:

a <- seq(1,10, by = 0.25)
b <- sin(a)
c <- sin(2*a)+1
d <- sin(0.5*a)+2
df <- data.frame(a,b,c,d)

plot(df$a, df$b, type="l")
par(new=T)
plot(df$a, df$c, type="l", col="blue")
par(new=T)
plot(df$a, df$d, type="l", col="red")

这是结果。 enter image description here

而不是真正的尺度,我有一个变换的曲线。 这是真正的结果: enter image description here

我使用了参数axes=F, xlab="", ylab="",并没有看到这个“重新缩放”。 我觉得非常危险,如果不控制y限制,在绘图过程中转换数据非常容易。

是否有更好的方法来控制y限制,而不是在所有绘图数据中查找最小值和最大值,以避免这种“重新缩放”效应? 我有几个相当大的文件,每个文件只从一个图中的10个只给出一行,我在一个页面上有几个图来比较我的数据。

最后一张“正确”图片的代码:

plot(df$a, df$b, type="l", ylim=c(-1.5,3.5))
par(new=T)
plot(df$a, df$c, type="l", ylim=c(-1.5,3.5), col="blue", axes=F, xlab="", ylab="")
par(new=T)
plot(df$a, df$d, type="l", ylim=c(-1.5,3.5), col="red", axes=F, xlab="", ylab="")

1 个答案:

答案 0 :(得分:0)

@Override
public void onRequestPermissionsResult(final int requestCode, @NonNull final String[] permissions, @NonNull final int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == REQUEST_PERMISSION) {
    if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
        // Permission granted.
    } else {
        // User refused to grant permission.
    }
}
}