Постройте поверхность и добавьте на нее точки с помощью R: Проблема с plot3D
Я пытаюсь построить поверхность в 3D на R и добавить точки на этой поверхности. Я использую пакет plot3D, который создает красивые трехмерные графики, и я определяю и строю свою поверхность с помощью этого кода:
M <- mesh(seq(-3, 3, length.out = 50),seq(-3, 3, length.out = 50))
u <- M$x ; v <- M$y
x <- u
y <- v
z <- u^2-v^2
surf3D(x, y, z, colvar = z, colkey = TRUE, box = FALSE, bty = "b", phi = 30, theta = 140)
Я получаю такую картину: Хорошая прорисованная поверхность .
Затем я хочу добавить точки, которые генерирую случайным образом:
xx=rnorm(10,1,1)
yy=rnorm(10,0,1)
zz=xx^2-yy^2
points3D(xx,yy,zz,colvar=zz,add=TRUE,pch=20,cex=0.5,col="black")
И перед добавлением точек это сначала странным образом ухудшает мою первоначальную картинку, как на следующем рисунке (где это заняло очень много времени, поэтому я не стал ждать, пока появятся 10 точек):Поверхность изношена .
Кто-нибудь понимает, почему точки просто добавляются к исходному изображению (и почему на обновление графика в любом случае уходит больше 5 минут)?