微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用多个分布函数修复 R 图上的 y 轴标签

如何解决使用多个分布函数修复 R 图上的 y 轴标签

enter image description here

我正在尝试使用标准 R 命令在 R 中绘制一些不同的伽马分布函数 - 没有包。

正如您在此处看到的,我正在为我绘制的每个函数重做 y 轴。有没有办法让我的所有 7 个函数沿着相同的 y 轴运行?这是我的代码

par(mfrow=c(1,1))
x <- seq(0,1,length = 10000)
fun1 <- function(x) dgamma(x,2)
fun2 <- function(x) dgamma(x,2,2)
fun3 <- function(x) dgamma(x,3,2)
fun4 <- function(x) dgamma(x,5,1)
fun5 <- function(x) dgamma(x,9,.5)
fun6 <- function(x) dgamma(x,7.5,1)
fun7 <- function(x) dgamma(x,.5,1)

plot(fun1,20,col = "red")
par(new = TRUE)
plot(fun2,col = "orange")
par(new = TRUE)
plot(fun3,col = "yellow")
par(new = TRUE)
plot(fun4,col = "green")
par(new = TRUE)
plot(fun5,col = "black")
par(new = TRUE)
plot(fun6,col = "blue")
par(new = TRUE)
plot(fun7,col = "purple")

解决方法

与其使用 S3 dispatch 调用 plot.function(),我更愿意直接调用 curve(),并使用 add 参数而不是 par(new = TRUE) 将行添加到现有阴谋;然后我们只得到一组 y 轴的轴和刻度标签:

curve(fun1,20,col = "red")
curve(fun2,col = "orange",add = TRUE)
curve(fun3,col = "yellow",add = TRUE)
curve(fun4,col = "green",add = TRUE)
curve(fun5,col = "black",add = TRUE)
curve(fun6,col = "blue",add = TRUE)
curve(fun7,col = "purple",add = TRUE)

enter image description here

如您所见,这与您最初的绘图完全不同,这是因为它每次都重新绘制轴而不是坚持一组轴限制。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?