如何使用R中的rgl包在两点之间画一条线?

lokaqttq  于 2023-03-10  发布在  其他
关注(0)|答案(1)|浏览(142)

无论我尝试什么,对lines3d的最后一次调用什么也不做,也不产生错误或警告消息。

library(MASS)
library(rgl)
set.seed(77)

## means
mu <- c(1, 3, 2)
## covariance matrix
Sigma <- matrix(c(3.0, 1.5, 1.0, 
                  1.5, 2.0, 0.5, 
                  1.0, 0.5, 1.0), 
                nrow = 3, byrow = TRUE)
## sample
d3 <- mvrnorm(n = 500, mu = mu, Sigma = Sigma)

from <- c(1, 3, 2)
to <- c(2, 2, 1)

par3d(windowRect = c(819, 88, 1492, 706))  
plot3d(d3[, 1], d3[, 2], d3[, 3], col = "blue", size = 5,
       xlab = "x", ylab = "y", zlab = "z",
       aspect = c(1, 1, 1))
points3d(from[1], from[2], from[3], col = "red", size = 10)
points3d(to[1], to[2], to[3], col = "red", size = 10)
lines3d(from, to, color = "red", size = 10)

我错过了什么?

8wigbo56

8wigbo561#

查看帮助页面?lines3d。您需要:

lines3d(c(from[1], to[1]),  c(from[2], to[2]), 
    c(from[3], to[3]), col="red", lwd=10)

相关问题