0

我正在尝试使用rsm包的persp()功能在 R 中实现 3D 图。我想将等高线添加到绘图的底部,例如这里:在 R 中使用 rsm 在 persp 之后绘制一条线

文档说这rsm应该是可能的:

在 persp 中,可以通过 contours 参数添加等高线。它可以是布尔值或字符值,也可以是列表。如果 boolean 和 TRUE,默认黑色轮廓线添加到框的底面

https://cran.r-project.org/web/packages/rsm/rsm.pdf

当我这样做时,我得到一个警告并且没有轮廓,尽管 3D 绘图生成得很好:"Warning message: In persp.default(a, t, q, contours = ("top") : "contours" is not a graphical parameter

我可以在这里使用代码使这种模式工作:有没有办法在 R 中创建一个带有轮廓的 3d 绘图?

但是很高兴知道为什么这个rsm包没有(似乎)像宣传的那样工作,除非我做错了什么?

这是我的 MWE:

library(rsm)

surface <- function(a, t){
  q <- (4*40)/(4*a^2 + 4*a*t^2 + t^4 + 4*40)
}

a <- seq(.00001, 5, length= 20)
t <- seq(.00001, 5, length= 20)
q <- outer(a, t, surface)

persp(a, t, q,
      contours=("top"))

persp(a, t, q,
      contours=T)

4

0 回答 0