R外部函数persp.default(x,y,z)中的错误:无效的'z'限制

时间:2015-08-17 15:25:33

标签: r limits

有人可以向我解释为什么这两段代码会返回两个不同的东西吗? 第一个:

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)

返回它应该的表面。

while:

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) 

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

1 个答案:

答案 0 :(得分:2)

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

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

persp函数需要绘制在三维空间中。默认设置是尝试绘制xyz的范围,但在这种情况下,z的范围是退化的。