Как раскрасить трехмерный график, который я сделал с помощью persp
?
используйте эти данные, чтобы воссоздать проблему: https://www.dropbox.com/s/vay1e86tdtclrf1/data.xlsx?dl=0
Код, показанный в этой ссылке, у меня не работает, потому что у меня есть 3 поясняющие переменные и 2 взаимодействия: Создать 3D-график, окрашенный в соответствии с осью Z
Я получил все виды ошибок, когда я пытался адаптировать его к моему делу. Как использовать внешний в моем случае? или получить zfacet = z1[-1, -1] + z1[-1, -ncz] + z1[-nrz, -1] + z1[-nrz, -ncz]
Например:
Error in seq.int(rx[1L], rx[2L], length.out = nb) : 'from' must be finite
In addition: Warning messages:
1: In min(x) : no non-missing arguments to min; returning Inf
2: In max(x) : no non-missing arguments to max; returning -Inf
В этой ссылке используется функция, но я ее не совсем понимаю: http://pj.freefaculty.org/guides/Rcourse/plot-3d/plots-3d.pdf
rv — моя зависимая переменная, x, y, y2 — мои независимые переменные (обратите внимание, что y2 — это просто y^2), тогда моя модель rv~x*y+y2+x:y2
Мой код для построения трехмерного графика выглядит так
library(akima)
x <- data$x
y <- data$y
y2 <- y^2
z <- data$rv
m <- glm(rv ~ x*y+y2+x:y2, family=gaussian)
i <- 5
xtemp <- seq(min(x),max(x),length.out=i)
xrange <- rep(xtemp,times=i)
ytemp <- seq(min(y),max(y),length.out=i)
yrange <- rep(ytemp,each=i)
y2temp <- seq(min(y),max(y),length.out=i)
y2range <- rep(ytemp,each=i)
newdata <- data.frame(x=xrange,y=yrange,y2=y2range)
zhat <- predict(m,newdata=newdata,type=c("response"))
xyz <- interp(xrange,yrange,that)
quartz()
persp(xyz,theta = 35, phi = 50,col="white", border="grey40", ticktype = "detailed", zlim=c(1,7)) -> res2
Не могли бы вы мне помочь?
that
иm
? - person adaien   schedule 05.04.2016