Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
La représentation 3D sur RLa représentation 3D sur RBrière Thomas, Flourent Hélène, Franconnet Maëva, Morvan Marie
Master 2 Ingénieur agronome,
Spécialisation statistique appliquée
Lundi 12 octobre 2015
Quel est l’intérêt de la représentation en 3 dimensions?
� Illustrer ou pouvoir observer concrètement certains phénomènes liés à des fonctions réelles
définies sous R²
1
définies sous R²
Il existe deux types de graphiques 3D:
� Représentation graphique 3D statique :
• Sans mouvement
Graphique facilement exportable sous différents formats
2
• Graphique facilement exportable sous différents formats
� Représentation graphique 3D interactive :
• Mouvement de l’objet avec un clic gauche puis en déplaçant la souris
Sommaire
I. I. Nuage de points dans un espace à 3 dimensions
II. II. Surface de réponse
3
II. II. Surface de réponse
III. III. Formes géométriques dans l’espace
IV.IV. Topographie en 3D
4 I. Représentation d’un nuage de points dans un espace à 3 dimensions
� Intérêt de la représentation du nuage de points :
• Représenter des configurations de points dans l’espace
• Identifier des relations entre 3 variables
points3d(rnorm(100), rnorm(100), rnorm(100))
plot3d(x=rnorm(100), y=rnorm(100), z=rnorm(100),xlab='xlab', ylab='ylab', zlab='zlab',col="black")
mfrow3d(2, 2)
bgplot3d(plot(x, z))
legend3d("center", c("Points en 2D", "Points en 3D"), pch = c(1, 16))
� Quelques exemples de fonctions :
II. Surfaces de réponse en 3 dimensions
� Représentation statique grâce à la fonction persp.
persp (mod,~PAPulm + IndSys, col = "red")
persp(x= newPaPulm, y = newIndSys, z = Pred, theta=-70, phi=30)
Permet de visualiser facilement un optimum (plan d’expérience) ainsi que des
5
Permet de visualiser facilement un optimum (plan d’expérience) ainsi que des modèles.
III. Représentation de formes géométriques dans l’espace
� Représentations des sommets des figures
géométriques de base: fonction dot3ddot3d
� Représentation des cadres des figures:
6
� Représentation des cadres des figures:
fonction wire3dwire3d
� Représentation des formes « pleines »:
fonction shade3dshade3d
� Prennent en entrée des objets de classe « mesh3d » : ensemble de vecteurs
III.A. Les fonctions représentants les formes de base�� Triangle3d, Triangle3d, ttetrahedron3d, etrahedron3d, cube3d, cube3d, octahedron3d, octahedron3d,
dodecahedron3d, dodecahedron3d, icosahedron3d, icosahedron3d, cuboctahedron3d, cuboctahedron3d, oh3d: oh3d:
Choix des couleurs, translations
7
� Choisir les contours des formes: subdivision3d, dont on choisit la « profondeur »
III.B. Au delà des formes simples
� D’autres fonctions existent :
PPolygon3d, sprites3dolygon3d, sprites3d ……………
8
III.C. Animations simples
� Fonctions pour animer les figures: play3dplay3d
� Enregistrer chaque étape de l’animation dans un fichier
� Créer une forme à partir d’un site internet :
9
� Créer une forme à partir d’un site internet :
« comète 67P/Churyumov-Gerasimenko »
(http://sci.esa.int/science-e/www/object/doc.cfm?fobjectid=54726)
IV. Représentation de la topographie:Cas du relief
� Jeu de données utilisé :
• Mont Eden : Volcan endormi situé en Nouvelle Zélande
• Plus haut sommet d’Auckland (196 m)
10
Altitude (z)
Sud - Nord
Est -
Ou
est
IV.A. Représentation statique du relief (1)
� Avec la fonction persppersppackage « plot3D »
� persp3D(x = axe Est-Ouest,
y = axe Nord-Sud,
z = altitude,
11
z = altitude,
clab = c("Altitude", "m"),
phi=50, theta=50,
contour=TRUE,
lighting=TRUE, ltheta=45, lphi=60,
xlab="Nord",
ylab="Ouest",
zlab="altitude",
main = "Mont Eden")
IV.A. Représentation statique du relief (2)� Avec la fonction wireframewireframe
package « lattice »
� wireframe(Mont_Eden,
shade=TRUE,
aspect=c(61/87,0.4),
12
light.source=c(10,0,10),
scales=list(arrows = FALSE),
screen = list(z = 30, x = -60),
xlab="Nord",
ylab="Ouest",
zlab="altitude",
main="Mont Eden")
IV.B. Représentation interactive du relief
� Fonction surface3dsurface3d sur package « rgl »
globejsglobejs
13
� Fonction globejsglobejs du package « threejs »
(fonction scatterplot3js pour représenter un NP)
Démonstration sur R
Pourquoi utiliser R pour représenter des objets spatiaux sachant que des outils très puissants
ont été développés spécialement à cet effet?
R permet de :
14
- Automatiser des tâches
- Réaliser l’ensemble des flux de travail (importation,
modification de la géométrie, analyse statistique, cartographie,
exportation) sur un même support
Conclusion (1)
� Plusieurs fonctions peuvent être combinées
15
Conclusion (2)
� Packages majoritairement utilisés pour réaliser des graphiques en 3 dimensions :
« rgl », « lattice », « plot3D », « threejs »
16
� Mais… Des progrès restent à faire (package shinyRGL, fonction wireframe…) !