代码之家  ›  专栏  ›  技术社区  ›  Philippe C

R外部函数透视错误。默认值(x,y,z):无效的“z”限制

  •  1
  • Philippe C  · 技术社区  · 10 年前

    有人能解释一下为什么这两段代码会返回两种不同的东西吗? 第一个:

    x<-y<-seq(from=-1,to=1,by=0.1)
    one<-function(x,y){
        x
    }
    z<-outer(x,y,FUN=one)
    persp(x,y,z)
    

    返回它应该返回的曲面。

    同时:

    x<-y<-seq(from=-1,to=1,by=0.1)
    one<-function(x,y){
        array(1, dim=length(x))
     }
     z<-outer(x,y,FUN=one)
     persp(x,y,z) 
    

    return:“persp.default(x,y,z=外部(x,y,一))中的错误:无效的'z'限制”

    1 回复  |  直到 10 年前
        1
  •  4
  •   A. Webb    10 年前

    对于第二种情况,绘制平面 z=1 ,您只需指定所需的 zlim 你自己,例如。

    persp(x,y,z,zlim=c(0,2))
    

    这个 persp 函数期望在三维空间中绘图。默认值是尝试在 x , y z ,但在这种情况下 z 的范围是退化的。