La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... ·...

17
La représentation 3D sur R La représentation 3D sur R Briè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

Transcript of La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... ·...

Page 1: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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

Page 2: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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²

Page 3: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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

Page 4: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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

Page 5: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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 :

Page 6: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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.

Page 7: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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

Page 8: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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 »

Page 9: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

III.B. Au delà des formes simples

� D’autres fonctions existent :

PPolygon3d, sprites3dolygon3d, sprites3d ……………

8

Page 10: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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)

Page 11: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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

Page 12: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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")

Page 13: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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")

Page 14: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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

Page 15: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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

Page 16: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

Conclusion (1)

� Plusieurs fonctions peuvent être combinées

15

Page 17: La représentation 3D sur R - Agrocampus Ouestmath.agrocampus-ouest.fr/infoglueDeliverLive/... · La représentation 3D sur R Brière Thomas, FlourentHélène,Franconnet Maëva, Morvan

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…) !