2017-04-12 9 views
0

ich plotly bin mit einem interaktiven 3D-Streudiagramm mit Kugeln zu ziehen, zum Beispiel:R: Interaktive 3D plotly Scatterplot rgl-Stil mit Hover-info

df <- data.frame(x = c(1,3,5), y = c(1,3,5), z = c(1,3,5), size = c(1,3,5)) 

library(plotly) 
plot_ly(df, type = "scatter3d", x = ~x, y = ~y, z = ~z, size = ~size, 
    marker = list(symbol = 'circle', sizemode = 'diameter')) 

enter image description here

Das Problem ist: Ich hasse Plotly's Kugeln. Ich viel lieber rgl ‚s Kugeln, die eine‚Glanz‘-Effekt zu ihnen haben, zum Beispiel:

library(rgl) 
spheres3d(x = df$x, y = df$y, z = df$z, radius = 0.8 * sqrt(df$size)) 

enter image description here

Und ich denke, es gibt sogar eine Art und Weise, in der Objekte RGL kann wie plotly in Web-Seite eingebettet werden Objekte. Allerdings fehlt ihnen die Fähigkeit, Daten über Hover und andere attraktive Fähigkeiten von plotly zu präsentieren.

Gibt es eine Möglichkeit, dass meine plotly-Kugeln einen "Glanz" -Effekt haben und eher wie rgl-Kugeln aussehen? Oder eine Möglichkeit, um rgl-Plots einige der Features plotly vor allem hove info zu machen?

Antwort

0

Dies sollte mit viel Javascript-Programmierung möglich sein, da, wenn es in eine Webseite eingebettet ist, rgl Javascript für alles verwendet. Es gibt jedoch keine integrierte Unterstützung, um auf solche Mausbewegungen zu reagieren. Innerhalb von R (mit Windows oder X11, um die Szene anzuzeigen, kein Browser) ist es wahrscheinlich schwieriger, aber die select3d und identify3d Funktionen tun verwandte Dinge (obwohl nicht ereignisgesteuert).

+0

Ich dachte eher umgekehrt - die 'plotly's Kugeln sehen aus wie' rgl's scheint der leichtere Weg zu sein, da 'plotly' sehr flexibel sein soll. Ich weiß einfach nicht, wie ich es machen soll. –

+0

Ich weiß nicht, plotly, aber wenn es erlaubt etwas wie Sprites (d. H. Bitmap-Bilder) geplottet werden, sollte es möglich sein. In einfachen Beleuchtungsmodellen bewegen sich die Lichter auf Kugeln nicht herum. – user2554330

Verwandte Themen