2 plot3D | 三维数据绘图:常见图形——线段、箭头、矩形、长方体、箱线( 二 )


()函数在三维空间里 , 依次连接各点形成一个闭合的多边形 。x、y、z使用向量依次表示各点在三个维度下的坐标 。
polygon3D(x = c(1, 0, 0, 1),y = c(0, 0, 1, 1),z = c(0, 1, 1, 0),col = "red", border = "black", lwd = 2, alpha = 0.4)
add参数
因为每个图形绘制函数都有add参数 , 因此可以很方便地在同一坐标系下进行图形叠加 。
以下示例来自函数帮助文档:
【2plot3D | 三维数据绘图:常见图形——线段、箭头、矩形、长方体、箱线】xx <- yy <- seq(-0.8, 0.8, by = 0.2)zz <- seq(-0.8, 0.8, by = 0.8)M <- mesh(xx, yy, zz)x0 <- M$x; y0 <- M$y; z0 <- M$zx1 <- x0 + 0.1Col <- c("red", "blue", "green") arrows3D(x0, y0, z0, x1 = x1, colvar = z0, lwd = 2, d = 2, clab = "z-value", col = Col, length = 0.1,xlim = c(-0.8, 0.8), ylim = c(-0.8, 0.8),main = "arrows3D, points3D, segments3D, border3D")# add starting point of arrowspoints3D(x0, y0, z0, add = TRUE, colvar = z0, colkey = FALSE, pch = ".", cex = 3, col = Col)# use segments to add sectionx0 <- c(-0.8, 0.8,0.8, -0.8)x1 <- c( 0.8, 0.8, -0.8, -0.8)y0 <- c(-0.8, -0.8, 0.8, -0.8)y1 <- c(-0.8,0.8, 0.8, 0.8)z0 <- c(0., 0., 0., 0.)segments3D(x0, y0, z0, x1, y1, z1 = z0,add = TRUE, col = "black", lwd = 2)# add a box border3D(-0.8, -0.8, -0.8, 0.8, 0.8, 0.8,col = "orange", add = TRUE, lwd = 3)