2016-11-08 2 views
0

Ich mag mehr 3D-Scatterplots in einem Fenster darzustellen. Zum Beispiel mit 2D-Scatterplots:R- Mehrere 3D-Scatterplots in einem Fenster

# data 
x1 <- rnorm(10) 
y1 <- rnorm(10) 
x2 <- rnorm(10) 
y3 <- rnorm(10) 

# two plots side-by-side in one window 
par(mfrow=c(1,2)) 
plot(y1 ~ x1) 
plot(y2 ~ x2) 

ich das Paket scatterplot3d verwende, aber mfrow nicht zu funktionieren scheint:

# 3D data 
z <- seq(-10, 10, 0.01) 
x1 <- cos(z) 
x2 <- cos(z+1) 
y <- sin(z) 

# try to plot side by side 
par(mfrow=c(1,2)) 
scatterplot3d(x1, y, z) 
scatterplot3d(x2, y, z) 

Statt Seite an Seite erscheint, erscheint das zweite Grundstück auf Spitze des ersten Grundstücks. Wie kann ich mehrere 3D-Streudiagramme mit R in ein Diagrammfenster einfügen, entweder mit scatterplot3d oder einem anderen Paket? Außerdem würde ich gerne in der Lage sein, sowohl ein 3D-Streudiagramm als auch andere reguläre 2D-Plots im selben Plotfenster zu platzieren.

+0

In meinem env (R 3.3.2; beide Rstudio und rohe R; Windows), 'mfrow()' arbeitet mit 'scatterplot3d'. Vielleicht hängt es von der Umwelt ab. – cuttlefish44

Antwort

3

können Sie layout statt mfrow verwenden. Zum Beispiel:

layout(matrix(c(1, 2), 1) 

z <- seq(-10, 10, 0.01) 
x <- cos(z) 
y <- sin(z) 
scatterplot3d(x, y, z, highlight.3d=TRUE, col.axis="blue", 
       col.grid="lightblue", main="scatterplot3d - 1", pch=20) 
scatterplot3d(x, y, z, highlight.3d=TRUE, col.axis="blue", 
       col.grid="lightblue", main="scatterplot3d - 1", pch=20)] 

enter image description here