Tracé - Tracé de dispersion et de surface 3D

Ce chapitre donne des informations sur le nuage de points tridimensionnel (3D) et le tracé de surface 3D et comment les créer à l'aide de Plotly.

Nuage de points 3D

Un nuage de points tridimensionnel (3D) est comme un nuage de points, mais avec trois variables - x, y, and z or f(x, y)sont des nombres réels. Le graphique peut être représenté sous forme de points dans un système de coordonnées cartésien tridimensionnel. Il est généralement dessiné sur une page ou un écran en deux dimensions à l'aide de méthodes de perspective (isométrique ou perspective), de sorte que l'une des dimensions semble sortir de la page.

Les nuages ​​de points 3D sont utilisés pour tracer des points de données sur trois axes afin de montrer la relation entre trois variables. Chaque ligne de la table de données est représentée par un marqueur dont la position dépend de ses valeurs dans les colonnes définies sur leX, Y, and Z axes.

Une quatrième variable peut être définie pour correspondre à color ou size du markers, ainsi, ajoutant encore une autre dimension à l'intrigue. La relation entre différentes variables s'appellecorrelation.

UNE Scatter3D traceest un objet graphique renvoyé par la fonction go.Scatter3D (). Les arguments obligatoires de cette fonction sont x,y and z chacun d'eux est un list or array object.

Par exemple -

import plotly.graph_objs as go
import numpy as np
z = np.linspace(0, 10, 50)
x = np.cos(z)
y = np.sin(z)
trace = go.Scatter3d(
   x = x, y = y, z = z,mode = 'markers', marker = dict(
      size = 12,
      color = z, # set color to an array/list of desired values
      colorscale = 'Viridis'
      )
   )
layout = go.Layout(title = '3D Scatter plot')
fig = go.Figure(data = [trace], layout = layout)
iplot(fig)

La sortie du code est donnée ci-dessous -

Tracé de surface 3D

Les tracés de surface sont des diagrammes de données tridimensionnelles. Dans un tracé de surface, chaque point est défini par 3 points: sonlatitude, longitude, et altitude(X, Y et Z). Plutôt que d'afficher les points de données individuels, les tracés de surface montrent une relation fonctionnelle entre undependent variable (Y)et deux variables indépendantes (X et Z). Ce tracé est un tracé associé au tracé de contour.

Voici un script Python pour rendre un tracé de surface simple où y array est transposée de x et z est calculé comme cos (x2 + y2)

import numpy as np
x = np.outer(np.linspace(-2, 2, 30), np.ones(30))
y = x.copy().T # transpose
z = np.cos(x ** 2 + y ** 2)
trace = go.Surface(x = x, y = y, z =z )
data = [trace]
layout = go.Layout(title = '3D Surface plot')
fig = go.Figure(data = data)
iplot(fig)

Ci-dessous mentionné est la sortie du code qui est expliqué ci-dessus -