Я пытаюсь создать чистый перспективный сюжет. Я могу создать хороший график с прогнозирующей «сеткой» на основе моих данных, однако он выходит за пределы моих ограничений x и y. Мой код ниже. Прошу прощения за отсутствие воспроизводимых данных.
dat<-data.frame(x,y,z);rm(x,y,z)
m1i<-(lm(z~poly(y,2)*x, data=dat))
xr<-range(dat$x)
xseq<-seq((xr[1]-1),xr[2], length=30)#the subtraction just made my prediction limits larger than what my data has- so it predicts for data I don't have
yr<-range(dat$y)
yseq<-seq((yr[1]-0.5),yr[2], length=30)#same as above, just so my predictions started at 0
zp<-outer(xseq,yseq, function(a,b) predict(m1i, newdata=data.frame(x=a,y=b)))
nrz<-nrow(zp)
ncz<-ncol(zp)
jet.colors<-colorRampPalette(c("grey60","white"))
nbcol<-100
color<-jet.colors(nbcol)
zfacet<-zp[-1,-1]+zp[-1,-ncz]+zp[-nrz,-1]+zp[-nrz,-ncz]
facetcol<-cut(zfacet,nbcol)
res<-persp(x=xseq,y=yseq,z=zp, col=color[facetcol],theta=40, phi=10,
ylab="Set Time (hr)", xlab="Distance (m)",
zlab="Proportion Captured", nticks=5, ticktype="detailed",
xlim=c(0,5),
ylim=c(0,4), zlim=c(0,1.1))
Я получаю предупреждение при запуске кода
В persp.default(x = xseq, y = yseq, z = zp, col = color[facetcol], : поверхность выходит за пределы поля
Я хотел бы отрезать поверхность так, чтобы она заканчивалась за пределами моей коробки.