Gráficos Interactivos con pyqtgraph en Python

Gráficos Interactivos con pyqtgraph en Python

En este tutorial, aprenderemos a crear gráficos interactivos con pyqtgraph en Python. Pyqtgraph es una biblioteca de gráficos de Python que proporciona una amplia gama de funciones para crear gráficos estáticos e interactivos.

Requisitos

Para seguir este tutorial, necesitarás lo siguiente:

  • Python 3.6 o superior
  • La biblioteca pyqtgraph instalada

Instalación de pyqtgraph

Para instalar pyqtgraph, puedes usar el administrador de paquetes de tu distribución de Python. Por ejemplo, en Ubuntu, puedes instalar pyqtgraph con el siguiente comando:

sudo apt install python3-pyqtgraph

Creando un gráfico básico

Para crear un gráfico básico con pyqtgraph, usaremos la clase PlotWidget. Esta clase proporciona una ventana gráfica en la que podemos dibujar gráficos.

Python
import pyqtgraph as pg

# Creamos una ventana gráfica
w = pg.PlotWidget()

# Dibujamos un gráfico de líneas
x = [1, 2, 3, 4, 5]
y = [6, 7, 8, 9, 10]
w.plot(x, y)

# Mostramos la ventana
w.show()

Este código creará un gráfico de líneas con dos puntos: (1, 6) y (5, 10).

Añadiendo elementos al gráfico

Podemos añadir elementos adicionales al gráfico, como títulos, etiquetas de ejes, líneas de referencia, etc.

Python
import pyqtgraph as pg

# Creamos una ventana gráfica
w = pg.PlotWidget()

# Dibujamos un gráfico de líneas
x = [1, 2, 3, 4, 5]
y = [6, 7, 8, 9, 10]
w.plot(x, y)

# Añadimos un título
w.setTitle("Gráfico de líneas")

# Añadimos etiquetas a los ejes
w.setLabel("x", "Eje x", units="unidades")
w.setLabel("y", "Eje y", units="unidades")

# Añadimos una línea de referencia
w.addLine(x=[2, 2], y=[0, 10], pen=pg.mkPen(color="red", width=2))

# Mostramos la ventana
w.show()

Este código creará un gráfico de líneas con un título, etiquetas de ejes y una línea de referencia.

Gráficos interactivos

Pyqtgraph proporciona una serie de funciones para crear gráficos interactivos. Por ejemplo, podemos permitir al usuario hacer zoom en el gráfico, seleccionar datos y modificar los parámetros del gráfico.

Python
import pyqtgraph as pg

# Creamos una ventana gráfica
w = pg.PlotWidget()

# Dibujamos un gráfico de líneas
x = [1, 2, 3, 4, 5]
y = [6, 7, 8, 9, 10]
w.plot(x, y)

# Permitimos al usuario hacer zoom
w.setMouseMode(pg.ViewBox.RectMode)

# Permitimos al usuario seleccionar datos
w.enableAutoRange(False)

# Mostramos la ventana
w.show()

Este código creará un gráfico de líneas con zoom y selección de datos.

Más información

Para obtener más información sobre pyqtgraph, consulta la documentación oficial: https://pyqtgraph.readthedocs.io/en/latest/.

Ejercicios

  • Crea un gráfico de barras que muestre los datos de la siguiente tabla:
Edad | Número de personas
------- | --------
18-25 | 100
26-35 | 200
36-45 | 300
46-55 | 200
56-65 | 100
  • Crea un gráfico de dispersión que muestre la relación entre la temperatura y la presión.

  • Crea un gráfico de líneas que muestre la evolución de un valor con el tiempo.

  • Añade una leyenda a un gráfico.

  • Permite al usuario cambiar el color de un gráfico.

  • Permite al usuario cambiar el ancho de línea de un gráfico.

Espero que este tutorial te haya sido útil.