Introducción
Esta práctica demuestra cómo trazar la coherencia de dos señales utilizando la biblioteca Matplotlib de Python. La coherencia de dos señales es una medida de su relación lineal, con un valor de 1 que indica coherencia perfecta y un valor de 0 que indica ausencia de coherencia.
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.
En ocasiones, 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 consultar a Labby. Deje su retroalimentación después de la sesión y resolveremos rápidamente el problema para usted.
Importar bibliotecas
El primer paso es importar las bibliotecas necesarias. Vamos a utilizar NumPy y Matplotlib.
import matplotlib.pyplot as plt
import numpy as np
Generar señales
A continuación, generaremos dos señales con una parte coherente a 10 Hz y una parte aleatoria. También agregaremos ruido blanco a las señales.
## Fixing random state for reproducibility
np.random.seed(19680801)
dt = 0.01
t = np.arange(0, 30, dt)
nse1 = np.random.randn(len(t)) ## white noise 1
nse2 = np.random.randn(len(t)) ## white noise 2
s1 = np.sin(2 * np.pi * 10 * t) + nse1
s2 = np.sin(2 * np.pi * 10 * t) + nse2
Graficar señales
Ahora podemos graficar las dos señales en el dominio del tiempo utilizando Matplotlib.
fig, axs = plt.subplots(2, 1)
axs[0].plot(t, s1, t, s2)
axs[0].set_xlim(0, 2)
axs[0].set_xlabel('Time')
axs[0].set_ylabel('s1 and s2')
axs[0].grid(True)
Graficar coherencia
Ahora podemos graficar la coherencia de las dos señales utilizando la función cohere de Matplotlib.
cxy, f = axs[1].cohere(s1, s2, 256, 1. / dt)
axs[1].set_ylabel('Coherence')
Mostrar la gráfica
Finalmente, podemos mostrar la gráfica utilizando la función show de Matplotlib.
fig.tight_layout()
plt.show()
Resumen
Esta práctica mostró cómo graficar la coherencia de dos señales utilizando la biblioteca Matplotlib de Python. Generamos dos señales con una parte coherente a 10 Hz y una parte aleatoria, agregamos ruido blanco a las señales y graficamos las señales en el dominio del tiempo y su coherencia utilizando la función cohere de Matplotlib.