畫3D scatter plot的工具:plotly, scatterplot3d

3D scatterplot的使用可以用來顯示如Principle Component Analysis的結果,目前在R中可以畫3D圖形的package其實不多,scatterplot3dplotly是唯二可以做這件事情的,scatterplot3d可以做出傳統使用R lattice所展現出來的繪圖功能,基本功能完善,但無法即時動態的去旋轉圖,這其實是畫3D Scatterplot最想做的事情,而這部分plotly提供非常好的R接口可以完成,plotly畫出來的圖形是可以即時去調整他的角度和一些顯示的細節,在探索一些三維下有無cluster現象時,真的很方便!

這邊附上官網的範例,非常簡單上手

library(plotly)

mtcars$am[which(mtcars$am == 0)] <- 'Automatic'
mtcars$am[which(mtcars$am == 1)] <- 'Manual'
mtcars$am <- as.factor(mtcars$am)

p <- plot_ly(mtcars, x = ~wt, y = ~hp, z = ~qsec, color = ~am, colors = c('#BF382A', '#0C4B8E')) %>%
  add_markers() %>%
  layout(scene = list(xaxis = list(title = 'Weight'),
                     yaxis = list(title = 'Gross horsepower'),
                     zaxis = list(title = '1/4 mile time')))

幾乎語法上跟ggplot2類似,只是在做輸出時候的layout會嚴謹一點
screenshot.png

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s