如何使用rgl绘制虚线/点线?

4

我想使用rgl绘制一些三维图形,但我想使用虚线/点线连接我的点。我该如何做?目前我有:

require(rgl)

p1 <- c(0,0,0)
p2 <- c(1,0,0)
p3 <- c(1,1,0)
p4 <- c(0,1,0)
p5 <- c(0.5,0.5,0.5)

mat <- cbind(p1,p2,p3,p4,p1,p5,p2,p5,p3,p5,p4)
x <- as.numeric(mat[1,])
y <- as.numeric(mat[2,])
z <- as.numeric(mat[3,])

plot3d(x,y,z,type="l",lwd=2,lty=3,box=FALSE,axes=FALSE,xlab="",ylab="",zlab="")
< p>所以lwd可以使用,但lty不能。 我也尝试过lty="dashed",但无济于事。

本质上,我想要绘制3D形状,然后可以:

  1. 轻松旋转/缩放(类似rgl)
  2. 导出为矢量图形格式(如rgl.postscript)
  3. 指定线型和颜色

如果有其他软件包可以实现这一点,请分享。 谢谢。

1个回答

2

我认为使用rgl包最好的方法是将顶点表示为点:

vertices <- c(t(cbind(x,y,z,1)))
indices <- seq_along(x)
dot3d( qmesh3d(vertices,indices) )

嗨,当我使用我的x,y,z参数运行上面的代码时,我收到了一个警告信息:警告信息:在矩阵(indices,nrow = 4)中:数据长度[11]不是行数[4]的子倍数或倍数,并且5个点被绘制为5个点。这些点完全没有连接起来。那是预期的输出吗? - wintermelon
以上给出了以下信息:数据长度[11]不是行数[4]的子倍数或倍数,且没有数字! - user3236841

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接