gpt4 book ai didi

R不一致: why add=T sometimes works and sometimes not in the plot() function?

转载 作者:行者123 更新时间:2023-12-02 03:15:16 28 4
gpt4 key购买 nike

为什么R与plot()函数中的add参数不一致?有时有效有时无效!在此示例中,它采用参数 add=TRUE 没有问题:

plot(0:10, 0:10*3)
plot(identity, add=TRUE, xlim=c(0,10))
plot(function (x) { sin(x)*10 }, add=TRUE, xlim=c(0,10))

但是当我发布时

plot(c(2, 3, 4), c(20,10,15), add=TRUE, pch="A")

这不行!!它说“add”不是图形参数。

请不要写我应该使用points()。我知道我可以使用它。我想了解 R 的奇怪行为 - 为什么它有时有效有时无效?

最佳答案

这无疑是令人烦恼且不一致的,但它是可以解释的。

identity 是一个类的对象 - function - 具有 plot 方法 (plot.function )带有 add 参数,而默认的 plot 方法没有add 参数。

一般来说,当尝试绘制对象 bar 时,您应该尝试 class(bar);如果它是 foo 类,则尝试 methods(class="foo") 看看它是否有一个绘图方法,或者 methods("plot") 来查看 plot.foo 是否存在。尝试 ?plot.foo (或 help("plot.foo") 查看帮助,或 plot.foo 查看函数本身。 (如果该方法是包 mypkg 中的私有(private)函数,您可能需要 mypkg:::plot_foogetAnywhere(plot.foo) 来找到它。)

关于R不一致: why add=T sometimes works and sometimes not in the plot() function?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6789055/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com