Loading

Alison's New App is now available on iOS and Android! Download Now

Study Reminders
Support
Text Version

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

3-Graphiques dimensionnels

00:01 Conférencier 1: Bonjour, tout le monde, et bienvenue à la deuxième partie de la section six, tout sur le graphique en trois dimensions à Matplotlib. Donc, dans ce tutoriel, nous allons en gros avoir une introduction rapide à la capacité de comploter 3D de Matplotlib, mais beaucoup de cela devrait vous être vraiment familier des sections précédentes ici. Donc, pour commencer, nous devons amener l'axe tridimensionnel pour rendre cela possible. Donc, ce que nous faisons est de "mpl_toolkits.mplot3d", nous voulons importer l'axe 3D. Donc, comme vous le devinez, il y a quelques différences subtiles entre un graphe bidimensionnel et un graphe tridimensionnel, principalement la troisième dimension, mais aussi, afin d'interagir avec et d'avoir vraiment une bonne impression pour les graphes tridimensionnels, il est important que nous puissions changer notre perspective du graphique en trois dimensions.

01:00 S1: Donc, ces graphes doivent être en mesure de cliquer et traînés dans le genre de la même façon que nos autres graphes ont pu être cliqué et traînés et déplacés, seulement ce besoin doit être capable de tourner sur un axe tridimensionnel, aussi. Donc, en gardant cela à l'esprit, nous devons avoir l'axe tridimensionnel. Maintenant, la chose suivante est assez typique, nous devons importer "matplotlib.pieplot" comme PLT. Maintenant, c'est assez commun dans toutes les parcelles, donc je ne devrais pas avoir besoin d'expliquer ça d'ici maintenant. Ensuite, on va aller de l'avant et on va faire "fig=plt.figure", on a fait ça avant. Et maintenant, allons-y et ajoutez un axe, donc nous allons juste dire "ax1 = fig. Add_subplot", et ce sera un par un par un, et ensuite nous dirons que la projection est égale à 3D.

01:53 S1: Maintenant, ce que cela fait, c'est en gros notifier Matplotlib que nous allons lancer trois dimensions à lui ; sinon, il va faire cette figure et ajouter le sous-tracé comme s'il s'agit d'un graphe bidimensionnel, quand il est, en effet, un graphe tridimensionnel. Maintenant, nous avons besoin de coordonnées. Donc, nous avons besoin de Xs, nous avons besoin de quelques Ys, bientôt, Ys, et ensuite, nous avons besoin de Z. Donc, pour X, nous en aurons un, deux, trois, quatre, cinq, sept, huit, neuf et un 10. Et puis, pour Y et Z, nous allons juste ajouter quelques nombres aléatoires ici. Je ne fais vraiment rien de précis, il suffit d'ajouter des nombres aléatoires. Vous pouvez me copier si vous voulez, mais ce n'est pas nécessaire.

02:41 S1: Donc, je vais juste m'assurer qu'ils ont la même longueur ; sinon, on aura des erreurs comme on l'a vu dans le passé. Et puis, nous sommes prêts à aller "ax.plot" et nous allons "plot_wireframes". Donc, ce sera le premier que nous faisons, alors nous placerons X, Y et Z. Maintenant, le wireframe n'est qu'une représentation tridimensionnelle d'une ligne, fondamentalement. Donc, vous allez voir ce que je veux dire ici dans un instant, mais allons-y et faisons "plt.show" et ramènerons cette chose. Whoops, ce devrait être "ax1.plot wireframe", essayez à nouveau. Ok, donc voici notre graphique en trois dimensions, nous pouvons en faire grand et tout ça. Comme vous pouvez le voir, nous avons cette ligne et c'est un kinda zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zig-zag. Et puis, on peut voir qu'il s'agit, en effet, d'un graphique en trois dimensions qui peut être interagi. Les axes se délabre automatiquement en tant que de besoin et tout ça, donc c'est assez utile.

03:43 S1: Maintenant, comme n'importe quel autre graphe, parce que ces axes se font basculer, parfois, il est utile d'avoir vos étiquettes sur vos axes. Donc, c'est là que nos étiquettes, notre définition d'un sous-tracé entre vraiment en jeu. Donc, la façon dont nous pouvons le faire est avec des étiquettes d'ensemble. Donc, on peut dire "ax1.set_xlabel" et on peut appeler ça ce que nous voulons, mais on va juste lui faire l'axe des X. Ensuite, nous pouvons dire "ax1.set_ylabel" et nous pouvons définir cela comme l'axe Y. Et puis, enfin, nous pouvons "ax1.set_zlabel" et ceci est égal à l'axe Z. Donc maintenant, nous pouvons sauver et courir, et maintenant, nous avons notre axe, et nous avons même des étiquettes sur l'axe. Donc, alors que nous cliquons et faites glisser pour faire tourner ce graphique autour, l'axe apparaît partout, on peut les voir assez bien. Et vous verrez aussi comment elle kinda d'angles le label avec l'axe assez bien. Il y a des endroits où ça semble funky, mais ça fait un assez bon boulot, en fait.

04:53 S1: Alors, la question suivante: "Pouvons-nous zoomer?" Non. Chaque fois que vous cliquez sur ça, vous allez zoomer dessus. Mais ce que tu peux faire, c'est que tu peux prendre ... Faisons un clic sur la maison en temps réel. Home still works and if you wanted to zoom in, for example, you aurais right click, and you can zoom like this ; it's not gonna donnera any more axis, but it's gonna allow you to either zoom in our out as besoin. Donc maintenant, vous pouvez regarder une jolie petite sur la carte ou cliquer avec le bouton droit et zoomer un peu. Et maintenant, c'est en gros les cartes, mais de toute façon. Et puis, vous pouvez toujours utiliser le dos et le vers et la maison et tout cela pour vous faire revenir vers l'endroit où vous voulez être.

05:38 S1: Donc de toute façon, c'est avec l'introduction vraiment basique du complot tridimensionnel avec Matplotlib. Nous avons beaucoup plus de parcelles à couvrir, donc c'est ce que vous devez regarder vers l'avant, alors restez à l'écoute de la prochaine vidéo. 00:01 Conférencier 1: Qu'est-ce qui se passe, tout le monde? Bienvenue dans la troisième partie de la section 6, toute la visualisation 3D avec Python et Matplotlib. Ce dont nous allons parler dans ce tutoriel est la représentation d'un nuage de points 3D. Auparavant, nous dessinions une ligne et connectaient les points, mais peut-être, vous voulez avoir un nuage de points à la place. Donc, ce que nous allons faire, c'est avoir ... Nous pouvons utiliser exactement les mêmes coordonnées que nous l'avons déjà fait ; et vraiment, la seule chose que nous avons à changer n'est qu'AX1, et au lieu de tracer un cadre filaire, nous pouvons en fait seulement disperser. Et on peut faire X, Y, Z et c'est très bien. Allons-y et le graphe en premier. Et on peut voir qu'il s'agit d'un nuage de points. Nous avons les points. Une chose à noter est que les points qui sont les plus proches de vous sont les plus sombres en couleur, et ceux les plus éloignés ont une alpha qui leur est appliquée. Donc, alors qu'ils se rapprochent de vous, ils deviennent plus sombres et plus loin est plus léger et plus ... En fait, je suppose que moins d'alpha s'applique à eux. Donc, c'est assez gros. Et donc, c'est un exemple simple d'un nuage de points.

01:12 S1: Comme nous l'avons montré auparavant, ce que nous pouvons faire c'est que vous pouvez avoir des choses comme vous pouvez ajouter de la couleur. Donc, on peut dire que la couleur est égale à R pour le rouge, et puis, on peut ajouter un marqueur, et on peut avoir ... Essayons un marqueur étoile pour l'instant. Donc maintenant, ce sont des étoiles rouges au lieu de points. Et il y a d'autres choses qui s'appliquent, fondamentalement. Donc, vous avez les autres plus loin s'évanouit un peu, moins alpha ; et ceux qui sont proches sont pratiquement pleins. Maintenant, la prochaine chose que nous pourrions faire, c'est comme ... Avec des diagrammes de dispersion, beaucoup de fois, vous identiez des groupes. Donc, une chose que vous pourriez avoir est ... Allons avec le marqueur O pour le moment. Et peut-être que vous voulez avoir un autre nuage de points. Donc, ce que nous pourrions faire, c'est prendre ce groupe ici, prendre ça. C'est bien, copier, coller, et changer toutes ces valeurs en négatif pour le X. Négatif, négatif, négatif, négatif, négatif, négatif, négatif et négatif. D'accord, les autres que nous pouvons juste ... Je ne sais pas, laissez les gens là. [ rires ] Je ne sais pas. En fait, allons changer une autre rangée aux négatifs. Négatif ici, ici, ici, ici, ici, et ici. Et puis, appelons ça, "x2y2z2". Et puis, nous allons faire un "ax1.scatter" et ensuite, nous allons faire "x2y2z2", et ensuite nous dirons que la couleur est verte, et le marqueur peut être cet O encore, c'est très bien. Donc, on peut sauver et courir ça maintenant.

02:51 S1: Et maintenant, vous pouvez voir qu'il y a deux grands groupes à ce nuage de points. Vous avez un groupe ici sur le côté gauche et un groupe sur le côté droit, et au fur et à mesure que nous le déplacons, nous pouvons voir ce qui les définit différemment. Donc, si nous les comparons comme ça, ils se chevauchent, et si nous comparons, peut-être, sur l'axe des X, il n'y a pas trop de différence. Nous comparons sur l'axe des Y, pas trop de différence. Et puis, si nous comparons, disons, regardez sur l'axe Z, c'est généralement là où le major ... Voyons si on peut tirer le Z, avec un temps vraiment difficile ici. Z serait comme ça, et puis, retirez-le. Non, c'est juste pas possible y'all. [ rire ]

03:31 S1: En tout cas, vous pouvez comparer les groupes ici et voir quelles sont les différences fondamentales entre ces groupes. Donc, on peut comparer, du moins, avec l'axe Z ici, quelque chose comme ça. Et vous pouvez voir que ce n'est pas vraiment beaucoup de changement, mais vous pouvez voir la différence dans le chevauchement, fondamentalement, de ... Parce que sur l'axe Z, vous avez des points de tous les ... Entre 10 et 2, on peut voir que nous avons des points tout le long de ce genre de ... Ou 10 et zéro, je suppose. Les deux négatifs y sont simplement parce que c'est juste ... Cela montre un peu plus que ce à quoi nous avons complots. Mais alors ... Donc, on peut voir ici qu'il n'y a vraiment pas de différence, alors on peut comparer l'axe des Y, et dire, "Eh bien, il est assez évident ici que les rouges sont dans les positifs, et les greens sont dans les négatifs", et puis, la même chose est vraie pour cet axe des X là où vous avez, encore, les négatifs ici et les positifs sont ici.

04:22 S1: Donc de toute façon, c'est comme ça que vous pouvez utiliser un nuage de points, et ensuite, tracer, peut-être, différents corps d'informations, et les montrer visuellement, et les colorier différemment, et tout ça. Mettons fin à ça. Et la question suivante, bien sûr, pourrait être quelque chose comme: "Peut-on faire des étiquettes?" Donc, le label est égal, et nous allons juste appeler ça rouge, et ensuite, on pourrait ajouter une étiquette ici, "label = vert", et ensuite, notre question, vraiment, est, "Pouvons-nous sortir avec le" plt.légende "? Sauvez et exécutez ça, et regardez-nous, on peut même ajouter une légende et tout fonctionne toujours. Donc, ça nous dit, "Hé, ces points sont le groupe rouge et ces points sont le groupe vert, et tout ça." Donc, de toute façon, c'est un exemple de nuage de points avec Matplotlib en 3D, ainsi que, un nuage de points avec plusieurs groupes de données, disons, et vous voulez montrer la différence.

05:14 S1: Donc, dans le prochain tutoriel, on va parler de graphiques à barres 3D, alors restez à l'écoute pour ça. 00:00 Intervenant 1: Qu'est-ce qui se passe, tout le monde? Et bienvenue dans la quatrième partie de la section 6, dans cette partie, nous allons parler de graphiques à barres 3D. Maintenant, les graphiques à barres 3D sont très intéressants avec un tracé en 3D, car vous devez tenir compte de quelques éléments. N'oubliez pas avant avec nos graphiques à barres en deux dimensions, nous devions en fait fournir trois dimensions fondamentalement, parce que vous aviez les X et Y. En fait, encore plus. Donc vous aviez le point X, c'était un point de départ, et puis vous aviez le Y, qui était en gros la hauteur de la barre, mais alors vous aviez en fait un autre paramètre qui était la largeur de la barre?

00:40 S1: Maintenant, avec des barres 3D, vous avez quelque chose de très similaire à ça. Donc de retour par la demande populaire est mon application Paint, où je peux dessiner des barres impressionnantes. Donc en 2D vous avez en gros le X ici et là c'était le Y, et puis vous avez dû donner la largeur, et puis nous avions un bar. Mais une barre 3D a essentiellement cette profondeur, la largeur de cette profondeur, puis aussi la hauteur de cette profondeur, en gros. Donc avec des barres 3D, ce que vous avez, c'est que vous avez votre X, votre Y, et votre Z parce que nous devons avoir ... C'est 3D, non? Donc vous avez le point de départ, qui doit être non seulement comme avant, nous avons eu un X, puis un Y. Donc vous avez ce point de départ XYZ, et ensuite vous devez donner la hauteur, donc ça compterait pour cela, et ensuite la largeur, qui compte pour ça, et ensuite la profondeur, qui tiendrait compte de cela, et puis le reste est connecté. Vous devez donc disposer de six éléments de données que vous alimrez dans ce diagramme à barres en trois dimensions. Alors avec ça, allons commencer.

01:50 S1: Nous avons ces données et en fait, nous pouvons supprimer tout ça, et nous allons laisser ce X, Y, et Z. Nous ferons des zéros, donc nous allons juste 00000 ... Whoops 000000 all the way through. Et en fait, si vous avez téléchargé NumPy avant, comme je suggérais, vous allez continuer à voir NumPy être utilisé, pourrait aussi bien l'avoir. Alors importez NumPy comme NP. Et ce que vous pouvez faire avec NumPy, qui est plutôt noble, est au lieu de chaque fois que vous voulez faire quelque chose comme ça, vous pouvez utiliser NumPy et vous pouvez dire NP.0s, et ensuite vous spécifiez combien, donc 10. Et cela fait en gros ce tableau NumPy de 10 zéros. Donc c'est une sorte de nifty d'avoir ça comme votre capacité.

02:40 S1: Maintenant, la prochaine chose dont nous avons besoin, c'est ces DVAR, que je pense d'eux comme de la profondeur, et ils peuvent être soit une liste, donc vous pouvez les changer par bar, ou ils peuvent être ce qu'on appelle un scaler, et ce serait juste quelque chose qui est appliqué à toutes les barres. Donc ce que nous avons est DX est égal à quelque chose, DY doit égalent quelque chose, et DZ est égal à quelque chose. Donc d'abord, faisons un scaler et nous en dirons un, un, et un. Ces barres seront donc au fond d'une profondeur et d'une largeur. Alors, allons-y et voyons ce qui nous arrive. Nous n'avons rien obtenu. Attends. Laisse-moi sortir de ça. Tu sais ce que nous avons fait? Nous n'avons pas encore comploté quoi que ce soit. Nous devons donc tracer la barre.

03:34 S1: Donc faisons AX1.bar3D, et c'est comme ça que nous tracons une barre 3D. Maintenant nous devons donner la position X, la position Y, et la position Z, donc nous venons de faire XYZ. Facile. Et puis on fait les dimensions, donc on fera DX, DY, DZ. Et puis c'est vraiment tout ce que nous avons à faire, alors essayons de relancer ça maintenant. Et vous y allez. Nous avons nos barres ici, juste des barres 3D. Et à cause de nos étiquettes, nous pouvons au moins voir ce qui se passe ici.

04:08 S1: Donc l'axe X était celui qui a été 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, si sûr assez, on peut s'aligner et voir, yep, c'est vrai. Et puis les autres choses étaient les choses qui variaient. Maintenant, parce que nous sommes en train de définir D comme tous les autres, donc c'est un large et un long sur le fond, nous n'obtenons pas vraiment beaucoup. Aussi, l'axe Z, nous sommes juste un grand, bien que nous commençons à Z= 0, aussi, pour les bars. Maintenant, allons-y et referons ça, et faisons ça un peu plus intéressant.

04:37 S1: Prenons nos données, et au lieu de scalers, nous voulons toujours le X et le Y parce que garder à l'esprit, où est. .. Rechargeons ça une fois de plus. Où sont les axes Z sur ce graphique? Eh bien, en général, à moins que vous bousoyez des trucs, X est en bas, Y est une sorte de partie du bas, et Z est la hauteur. Maintenant, c'est une sorte de norme. De toute évidence, nous pouvons déplacer ce graphique. On peut même la retourner à l'envers si on le voulait, bien que flirtant à l'envers ne change pas vraiment le fait de ce que Z fait. Mais de toute façon, c'est une sorte de situation typique.

05:10 S1: Alors, sortons de ça, et nous allons garder X et Y comme égal à un. Donc comme nous avons fait NumPy zéros 10, on peut faire des MP.1s comme ça. Et nous allons dire que nous voulons que ce soit 10 de long, et ensuite nous ferons de nouveau MP.1s, et encore une fois, nous ferons ce 10 long. Et puis DZ, nous allons faire une liste basique. Nous ferons juste 1, 2, 3, 4, 5, 6, 7, 8, 9 et 10. Il s'agit donc de l'élément variable. Sinon, X et Y, X et Y, encore une fois ... C'est ce qui affecte la largeur de cette barre, donc la largeur et la longueur de cette barre, mais la hauteur de cette barre, est déterminée par DZ. Alors, allons-y et courons-nous vite. Et bien sûr, maintenant nous avons des barres de hauteurs différentes, donc notre diagramme à barres est un peu plus intéressant pour nous quand vous la flip à l'envers pour l'effet final. [ rires ] Bref, il s'agit donc de diagrammes à barres en 3D.

06:13 S1: Et donc un graphique à barres 3D est très intéressant parce que vous avez en fait assez de dimensions ; vous n'avez pas seulement trois dimensions. Vous avez le point de départ X, Y, Z ; vous avez aussi la hauteur, la largeur et la longueur. Donc vous avez vraiment un peu à votre disposition. Ce n'est pas vrai, disons, un affichage à six dimensions, et parce que la hauteur et la largeur peuvent se trouver dans la façon d'autres choses, mais aussi longtemps que vous savez où le point de départ aurait dû être, vous pouvez en fait montrer plus qu'un simple, disons, trois points de données qui font tout pour nous. [ rires ] Quoi qu'il en soit, c'est ça avec des graphiques à barres 3D.

06:49 S1: Dans le prochain tutoriel, nous allons montrer juste un exemple simple et rapide de ... Ou ce n'est pas vraiment un exemple simple, mais juste une présentation rapide de l'image filaire, parce que vous pouvez vraiment faire beaucoup de choses vraiment cool avec le wireframe, mais vous devez avoir des données cool pour commencer. Donc, je vais vous montrer les données de l'échantillon, et ensuite nous allons faire quelque chose de cool avec le wireframe avec ça. Donc, de toute façon, c'est ce que vous devez regarder vers l'avant, alors restez à l'écoute pour ça. Merci d'avoir regardé.