在R中绘制三维曲面和平面

在R中绘制三维曲面和平面,r,plot,3d,R,Plot,3d,我试图绘制由方程y=x确定的平面,该方程在0和2之间,叠加在由z=1/2*x*y描述的三维曲面上 我“黑”了源代码以获得表面的最低满意表示(不介意重新开始),但我不知道如何叠加2D平面 以下是想法: 到目前为止,我得到的是: 使用借用代码: my_surface <- function(f, n=10, ...) { ranges <- rgl:::.getRanges() x <- seq(ranges$xlim[1], ranges$xlim[2], leng

我试图绘制由方程y=x确定的平面,该方程在0和2之间,叠加在由z=1/2*x*y描述的三维曲面上

我“黑”了源代码以获得表面的最低满意表示(不介意重新开始),但我不知道如何叠加2D平面

以下是想法:

到目前为止,我得到的是:

使用借用代码:

my_surface <- function(f, n=10, ...) { 
  ranges <- rgl:::.getRanges()
  x <- seq(ranges$xlim[1], ranges$xlim[2], length=n)
  y <- seq(ranges$ylim[1], ranges$ylim[2], length=n)
  z <- outer(x,y,f)
  surface3d(x, y, z, ...)
}
library(rgl)

f <- function(x, y) 1/2 * x * y
g <- function(x, y) x = y

x <- seq(0, 2, by=0.001)
y <- seq(0,2, by=0.001)
z <- 1/2 * x * y

plot3d(x, y, z, xlab="X", ylab="y", zlab="z", site=5, type = "n")

my_surface(f, alpha=.5, col="red")


my_second_surface <- function(f, n=10, ...) { 
  ranges <- rgl:::.getRanges()
  x <- seq(ranges$xlim[1], ranges$xlim[2], length=n)
  y <- seq(ranges$ylim[1], ranges$ylim[2], length=n)
  z <- outer(x,y,g)
  surface3d(x, y, z, ...)
}
my_second_surface(g, alpha=.5, col="blue")

my_surface那么你的代码和数据在哪里?那么你的代码和数据在哪里?