Datos bidimensionales de Matplotlib en un gráfico tridimensional

PythonPythonBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

Esta práctica demuestra cómo trazar datos bidimensionales en ejes selectivos de una tridimensional utilizando la palabra clave zdir de ax.plot. La librería matplotlib de Python se utiliza para crear la tridimensional.

Consejos sobre la VM

Una vez finalizada la inicialización de la VM, haga clic en la esquina superior izquierda para cambiar a la pestaña Cuaderno y acceder a Jupyter Notebook para practicar.

A veces, es posible que tenga que esperar unos segundos a que Jupyter Notebook termine de cargarse. La validación de las operaciones no se puede automatizar debido a las limitaciones de Jupyter Notebook.

Si tiene problemas durante el aprendizaje, no dude en preguntar a Labby. Deje sus comentarios después de la sesión y lo resolveremos rápidamente.

Importar bibliotecas

El primer paso es importar las bibliotecas necesarias. Necesitamos matplotlib y numpy para trazar el gráfico tridimensional.

import matplotlib.pyplot as plt
import numpy as np

Crear un gráfico tridimensional

El segundo paso es crear un gráfico tridimensional utilizando ax = plt.figure().add_subplot(projection='3d').

ax = plt.figure().add_subplot(projection='3d')

Trazar datos bidimensionales en el gráfico tridimensional

El tercer paso es trazar datos bidimensionales en el gráfico tridimensional utilizando ax.plot y ax.scatter. La función ax.plot traza una curva senoidal utilizando los ejes x e y. La función ax.scatter traza datos de diagrama de dispersión en los ejes x y z.

## Trazar una curva senoidal utilizando los ejes x e y.
x = np.linspace(0, 1, 100)
y = np.sin(x * 2 * np.pi) / 2 + 0.5
ax.plot(x, y, zs=0, zdir='z', label='curva en (x, y)')

## Trazar datos de diagrama de dispersión (20 puntos bidimensionales por color) en los ejes x y z.
colors = ('r', 'g', 'b', 'k')

## Fijar el estado aleatorio para la reproducibilidad
np.random.seed(19680801)

x = np.random.sample(20 * len(colors))
y = np.random.sample(20 * len(colors))
c_list = []
for c in colors:
    c_list.extend([c] * 20)
## Al utilizar zdir='y', el valor y de estos puntos se fija en el valor zs 0
## y los puntos (x, y) se trazan en los ejes x y z.
ax.scatter(x, y, zs=0, zdir='y', c=c_list, label='puntos en (x, z)')

Personalizar el gráfico

El cuarto paso es personalizar el gráfico agregando una leyenda, estableciendo los límites y etiquetas de los ejes y cambiando el ángulo de vista.

## Hacer la leyenda, establecer los límites y etiquetas de los ejes
ax.legend()
ax.set_xlim(0, 1)
ax.set_ylim(0, 1)
ax.set_zlim(0, 1)
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')

## Personalizar el ángulo de vista para que sea más fácil ver que los puntos de dispersión
## se encuentran en el plano y=0
ax.view_init(elev=20., azim=-35, roll=0)

plt.show()

Ver el gráfico

El último paso es ver el gráfico tridimensional ejecutando el código.

Resumen

En este laboratorio, aprendimos cómo trazar datos bidimensionales en ejes selectivos de un gráfico tridimensional utilizando la palabra clave zdir de ax.plot. También aprendimos cómo personalizar el gráfico agregando una leyenda, estableciendo los límites y etiquetas de los ejes y cambiando el ángulo de vista.