J'ai essayé d'utiliser la fonction "complotement" mais cela ne fonctionne pas du tout dans mon cas. "ggplot" fonctionne dans le cas de la 2D mais il donne une erreur lors de l'ajout d'un axe supplémentaire. Comment résoudre ce problème?
ggplot(data,aes(x=D1,y=D2,z=D3,color=Sample))+geom_point()
Comment ajouter un axe de plus et obtenir le tracé 3D dans ce domaine? Je vous remercie.
Puisque vous avez tagué votre question avec plotly
et dit que vous avez essayé de l'utiliser avec parcimonie, je pense qu'il serait utile de vous donner une solution de code de travail dans plotly
:
Création de données à tracer avec:
set.seed(417)
library(plotly)
temp <- rnorm(100, mean=30, sd=5)
pressure <- rnorm(100)
dtime <- 1:100
Représentation graphique de votre nuage de points 3D à l'aide de scatter3d
type:
plot_ly(x=temp, y=pressure, z=dtime, type="scatter3d", mode="markers", color=temp)
ggplot
comme d'autres l'ont remarqué, ne prend pas en charge le rendu graphique 3D.
Une solution possible est gg3D .
gg3D est un package créé pour étendre ggplot2 pour produire des tracés 3D. Il fait exactement ce que vous demandez: il ajoute un troisième axe à un ggplot. Je le trouve assez bon et facile à utiliser et c'est ce que j'utilise pour mes besoins limités.
Un exemple tiré de la vignette pour produire une intrigue de base
devtools::install_github("AckerDWM/gg3D")
library("gg3D")
## An empty plot with 3 axes
qplot(x=0, y=0, z=0, geom="blank") +
theme_void() +
axes_3D()
## Axes can be populated with points using the function stat_3D.
data(iris)
ggplot(iris, aes(x=Petal.Width, y=Sepal.Width, z=Petal.Length, color=Species)) +
theme_void() +
axes_3D() +
stat_3D()
Il existe d'autres options n'impliquant pas ggplot. Par exemple, l'excellent package plot3D avec son extension plot3Drgl pour tracer en openGL.