Introducción
En este laboratorio, aprenderemos a crear un gráfico de líneas con puntos de datos utilizando Matplotlib en Python. Utilizaremos la clase EventCollection de Matplotlib para marcar las ubicaciones de los puntos de datos x e y en los ejes respectivos para cada curva.
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 para usted.
Importar las bibliotecas necesarias
En primer lugar, necesitamos importar las bibliotecas requeridas. Utilizaremos numpy para crear datos aleatorios, matplotlib.pyplot para crear el gráfico y EventCollection de matplotlib.collections para marcar las ubicaciones de los puntos de datos.
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.collections import EventCollection
Crear datos aleatorios
Vamos a crear datos aleatorios para dos curvas utilizando la función numpy.random.random(). Generaremos dos conjuntos de 10 números aleatorios entre 0 y 1 y los almacenaremos en una matriz.
## create random data
xdata = np.random.random([2, 10])
Ordenar los datos
Para obtener curvas nítidas, ordenaremos los datos utilizando el método sort().
## split the data into two parts
xdata1 = xdata[0, :]
xdata2 = xdata[1, :]
## sort the data so it makes clean curves
xdata1.sort()
xdata2.sort()
Crear puntos de datos y
Vamos a crear algunos puntos de datos y para cada curva realizando algunas operaciones matemáticas en los puntos de datos x ordenados.
## create some y data points
ydata1 = xdata1 ** 2
ydata2 = 1 - xdata2 ** 3
Crear el gráfico
Vamos a crear el gráfico utilizando la función matplotlib.pyplot.plot().
## plot the data
fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)
ax.plot(xdata1, ydata1, color='tab:blue')
ax.plot(xdata2, ydata2, color='tab:orange')
Crear los eventos
Vamos a crear los eventos que marcan los puntos de datos x e y utilizando la función EventCollection().
## create the events marking the x data points
xevents1 = EventCollection(xdata1, color='tab:blue', linelength=0.05)
xevents2 = EventCollection(xdata2, color='tab:orange', linelength=0.05)
## create the events marking the y data points
yevents1 = EventCollection(ydata1, color='tab:blue', linelength=0.05,
orientation='vertical')
yevents2 = EventCollection(ydata2, color='tab:orange', linelength=0.05,
orientation='vertical')
Agregar los eventos al gráfico
Vamos a agregar los eventos al gráfico utilizando la función matplotlib.pyplot.add_collection().
## add the events to the axis
ax.add_collection(xevents1)
ax.add_collection(xevents2)
ax.add_collection(yevents1)
ax.add_collection(yevents2)
Establecer los límites y agregar título
Vamos a establecer los límites de los ejes x e y y agregar un título al gráfico utilizando las funciones matplotlib.pyplot.xlim(), matplotlib.pyplot.ylim() y matplotlib.pyplot.title().
## set the limits
ax.set_xlim([0, 1])
ax.set_ylim([0, 1])
ax.set_title('line plot with data points')
Mostrar el gráfico
Finalmente, mostraremos el gráfico utilizando la función matplotlib.pyplot.show().
## display the plot
plt.show()
Resumen
En este laboratorio, aprendimos cómo crear un gráfico de líneas con puntos de datos utilizando Matplotlib en Python. Utilizamos la clase EventCollection de Matplotlib para marcar las ubicaciones de los puntos de datos x e y en los respectivos ejes para cada curva.