我有一個列表a
三個矩陣和一個矢量h
三個高度(任何正實數)。這些矩陣形成三角形,即棱鏡的底部。我想添加矢量h
的信息來構建棱鏡。使用ggplot2繪製3D棱鏡並繪圖
我創建了一個函數來繪製2D圖形(pplot
)。我如何繪製如下圖所示的棱鏡?
讓pplot
和玩具問題是一個例子:
library(ggplot2)
pplot <- function(polygon){
polygon <- lapply(polygon, function(x) {colnames(x) <- NULL; x})
vertex_number = nrow(polygon[[1]])
g = ggplot2::ggplot()
names(polygon) = 1:length(polygon)
k <- plyr::ldply(polygon, function(x) data.frame(x))
g <- ggplot2::ggplot(k, ggplot2::aes(x = X1, y = X2, group = .id)) + ggplot2::geom_polygon(colour = "black", fill = NA)
return(g)
}
a <- list()
b1 <- matrix(rnorm(6), ncol = 2)
b2 <- matrix(rnorm(6), ncol = 2)
b3 <- matrix(rnorm(6), ncol = 2)
a[[1]] <- b1
a[[2]] <- b2
a[[3]] <- b3
h <- c(.3, .5, .1)
#pplot function example
pplot(a)
圖形所需
當座標a = d
,b = f
,c = e
是頂點,所有的信息都在a
。
觀察1:數據必須列表。
觀察2:我用葡萄牙語創建了一個帖子,但沒有人回答。我可以做這個還是作弊? (我是新來的) https://pt.stackoverflow.com/questions/165538/plotar-figuras-3d-para-dados-em-lista
我想ggplot沒有做3D。你能否指出我們這個假設被證明是不正確的例子? –
可以看到一個例子:https://www.r-bloggers.com/3d-plots-with-ggplot2-and-plotly/ –
當我閱讀那個博客時,那是在做3D razzmatazz。 –