如何绘制两个平面的一部分

时间:2019-05-13 18:22:14

标签: r

我想在3D图中绘制两个平面。我尝试过persp3d,它会生成两个平面。但是,我不想显示整个两个平面,而是只想显示它们的一部分被相交线分开,即蓝色平面的“左”部分和红色平面的“上”部分。我尝试了xlim,ylim,但是看来我的lims不是单一值,而是函数。

library(rgl)
x <- seq(-10, 10, length = 30)
y <- x
region = expand.grid(x=x, y=y)
z1 = region$x+2*region$y + 2
z2=3*region$x+region$y
persp3d(x,y,z1,col="steelblue")
persp3d(x,y,z2,col="red",add=TRUE)

2 个答案:

答案 0 :(得分:0)


 grid = mesh(x,y)
 z = with(grid,ifelse(x+2*y>3*x+y,x+2*y,3*x+y))
 persp3D(z = z, x = x, y = y,col = NULL)

答案 1 :(得分:0)

for (i in 1:900){
z[i] = ifelse(region$x[i]+2*region$y[i] + 2 > 
3*region$x[i]+region$y[i],region$x[i]+2*region$y[i] + 2,3*region$x[i]+region$y[i])}
persp3d(x,y,z,col="steelblue")

这是受到黄锐建议的启发