Se establece también un retardo de 100 milisegundos para repetir el ciclo.
Se establece también un retardo de 100 milisegundos para repetir el ciclo.
## Código en Python
## Código en Python
A continuación, se presenta una breve explicación acerca del funcionamiento del programa para la interfaz de usuario diseñada en Python:
En primer lugar, se importan todas las librerías o módulos necesarios, previamente instalados, de no ser así ir a la sección de **Instalación de librerías de Python**.
```
from threading import Thread
import collections
import matplotlib.pyplot as plt #Gráficación de datos
import matplotlib.animation as animation #Animar la gráfica
import time #Delays
import serial #comunicación con el monitor serial de Arduino
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg #Crear una figura para insertar en tkinter
import tkinter as tk #Para la interfaz
from matplotlib.lines import Line2D #Para hacer las líneas de las gráficas
```
Aquí se encuentran las funcionaes necesarias para: crear hilos con *threading*, hacer una colección o lista con los datos a graficar con *collections*, dibujar los datos en una gráfica animada con líneas 2D y visualizarla en la interfaz utilizando los módulos de la librería de *matplotlib*, establecer la comunicación serial con Arduino usando *serial*, el diseño de la interfaz se hace con el paquete *tkinter* y finalmente, se importa *time* para ocupar algunos retardos de tiempo.
A continuación, el código dispone de una serie de funciones que son llamadas entre sí y se utilizan también en los distintos objetivos de la interfaz para mostrar la información recibida de Arduino y mantener la interacción con el usuario: