Matplotlib Line

Matplotlib Logo



Linestyle

➖ En Matplotlib, el **estilo de la línea** define la apariencia de la línea que conecta los puntos de datos en tu gráfico. Puedes controlar el estilo de la línea utilizando el argumento `linestyle` (o su forma abreviada `ls`) en la función `plot()`.

El estilo de línea se especifica con una cadena de texto. Aquí tienes los estilos más comunes:

  • `'solid'` (o `'-'`): Línea sólida (es el estilo por defecto).
  • `'dashed'` (o `'--'`): Línea punteada.
  • `'dashdot'` (o `'-.'`): Línea con guiones y puntos.
  • `'dotted'` (o `':'`): Línea de puntos.

Elegir el estilo de línea adecuado puede ayudar a distinguir diferentes conjuntos de datos en un mismo gráfico o a enfatizar ciertas tendencias.

💻 Código de Ejemplo: Usando diferentes estilos de línea


import matplotlib.pyplot as plt
import numpy as np

ypoints = np.array([3, 8, 1, 10])

plt.plot(ypoints, linestyle='solid', label='solid')
plt.plot(ypoints + 2, linestyle='dashed', label='dashed')
plt.plot(ypoints + 4, linestyle='dashdot', label='dashdot')
plt.plot(ypoints + 6, linestyle='dotted', label='dotted')

plt.xlabel("Índice")
plt.ylabel("Valor")
plt.title("Ejemplos de estilos de línea en Matplotlib")
plt.legend()
plt.grid(True)
plt.show()
            

En este ejemplo, trazamos la misma serie de puntos cuatro veces, cada vez con un estilo de línea diferente especificado por el argumento `linestyle`. Hemos añadido un desplazamiento en el eje y para que las líneas sean claramente visibles y una leyenda para identificar cada estilo.

📊 Ejemplo Visual Interactivo (Generado con JavaScript)

👆 Este gráfico generado con JavaScript muestra ejemplos de los diferentes estilos de línea que se pueden utilizar en Matplotlib para conectar los puntos en un gráfico.

Shorter Syntax

✍️ Como vimos brevemente en la lección de "Markers", Matplotlib también te permite especificar el **marcador**, el **estilo de la línea** y el **color** en un solo argumento, utilizando una **sintaxis más corta** o "format string".

La sintaxis general es: `marker|line|color`. Puedes especificar uno, dos o los tres elementos en cualquier orden.

Aquí tienes algunos ejemplos de cómo funciona esta sintaxis abreviada:

  • `'o--r'`: Marcador de círculo (`'o'`), línea punteada (`'--'`), color rojo (`'r'`).
  • `'*.g'`: Marcador de asterisco (`'*'`), sin línea (implícito), color verde (`'g'`).
  • `'+:'`: Marcador de cruz (`'+'`), línea de puntos (`':'`), color azul (por defecto si no se especifica).

Esta sintaxis puede hacer que tu código sea más conciso y rápido de escribir para combinaciones comunes de estilo.

💻 Código de Ejemplo: Usando la sintaxis abreviada


import matplotlib.pyplot as plt
import numpy as np

ypoints = np.array([3, 8, 1, 10])

plt.plot(ypoints, 'o--r', label='o--r')
plt.plot(ypoints + 2, '*.g', label='*.g')
plt.plot(ypoints + 4, '+:', label='+:')

plt.xlabel("Índice")
plt.ylabel("Valor")
plt.title("Ejemplos de sintaxis abreviada en Matplotlib")
plt.legend()
plt.grid(True)
plt.show()
            

En este ejemplo, hemos utilizado la sintaxis abreviada para definir el marcador, el estilo de la línea y el color en una sola cadena para cada llamada a `plot()`. Matplotlib interpreta estas cadenas y aplica los estilos correspondientes.

📊 Ejemplo Visual Interactivo (Generado con JavaScript)

👆 Este gráfico generado con JavaScript ilustra cómo la sintaxis abreviada en Matplotlib permite combinar la especificación de marcadores, estilos de línea y colores en una sola cadena.

Line Color

✍️ En Matplotlib, tienes varias opciones para personalizar el color de las líneas en tus gráficos. Puedes usar nombres de colores, códigos hexadecimales, valores RGB o RGBA, y más.

🎨 Opciones para especificar el color

  • Nombres de colores básicos: Puedes usar nombres de colores como 'red', 'green', 'blue', 'cyan', 'magenta', 'yellow', 'black', 'white'.
  • Abreviaturas de color: Matplotlib también admite abreviaturas de un solo carácter para algunos colores básicos:
    • 'b': blue
    • 'g': green
    • 'r': red
    • 'c': cyan
    • 'm': magenta
    • 'y': yellow
    • 'k': black
    • 'w': white
  • Valores de escala de grises: Puedes usar un string que represente un valor de punto flotante entre 0 y 1, por ejemplo: '0.75'
  • Códigos hexadecimales: Puedes usar códigos hexadecimales para especificar colores, como '#FF5733' (un tono de rojo anaranjado).
  • Tuplas RGB/RGBA: Puedes usar tuplas RGB (rojo, verde, azul) o RGBA (rojo, verde, azul, alfa) donde cada valor está entre 0 y 1. Por ejemplo, `(1, 0.5, 0.5, 0.5)` produce un rosa claro semitransparente.

💻 Código de Ejemplo: Especificando el color de la línea


import matplotlib.pyplot as plt
import numpy as np

ypoints = np.array([3, 8, 1, 10])

plt.plot(ypoints, color = 'green', label = 'green')
plt.plot(ypoints + 2, color = 'r', label = 'red')
plt.plot(ypoints + 4, color = '#4CAF50', label = '#4CAF50')
plt.plot(ypoints + 6, color = (0.4, 0.2, 0.6, 0.5), label = '(0.4, 0.2, 0.6, 0.5)')

plt.xlabel("Índice")
plt.ylabel("Valor")
plt.title("Ejemplos de colores de línea en Matplotlib")
plt.legend()
plt.grid(True)
plt.show()
            

📊 Ejemplo Visual Interactivo (Generado con JavaScript)

👆 Este gráfico generado con JavaScript ilustra cómo especificar diferentes colores de línea en Matplotlib.

Line Width

📏 El **grosor de las líneas** en Matplotlib se puede ajustar para mejorar la claridad visual y destacar ciertas líneas en un gráfico. Puedes controlar el ancho de la línea utilizando el argumento `linewidth` (o su forma abreviada `lw`) en la función `plot()`. El valor que asignes a `linewidth` representa el ancho de la línea en puntos.

Un ancho de línea más grueso puede hacer que una línea sea más prominente, mientras que un ancho más delgado puede ser útil cuando se trazan muchas líneas juntas.

💻 Código de Ejemplo: Ajustando el ancho de la línea


import matplotlib.pyplot as plt
import numpy as np

ypoints = np.array([3, 8, 1, 10])
line_widths = [1, 3, 5, 7]

plt.figure(figsize=(8, 6))
for i, lw in enumerate(line_widths):
    plt.plot(ypoints + i * 2, linewidth=lw, label=f'Ancho: {lw} pt')

plt.xlabel("Índice")
plt.ylabel("Valor")
plt.title("Ejemplos de anchos de línea en Matplotlib")
plt.legend()
plt.grid(True)
plt.show()
            

En este ejemplo, trazamos la misma serie de puntos cuatro veces, cada vez con un ancho de línea diferente especificado por el argumento `linewidth`. Hemos añadido un desplazamiento en el eje y para que las líneas sean claramente visibles y una leyenda para identificar cada ancho.

📊 Ejemplo Visual Interactivo (Generado con JavaScript)

👆 Este gráfico generado con JavaScript muestra ejemplos de líneas con diferentes grosores, ilustrando cómo el valor de `linewidth` afecta la apariencia de las líneas en un gráfico de Matplotlib.

Multiple Lines

📈 Una de las funcionalidades más útiles de Matplotlib es la capacidad de trazar **múltiples líneas** en un solo gráfico. Esto es fundamental para comparar diferentes conjuntos de datos o mostrar varias tendencias en el mismo contexto visual.

Hay varias maneras de trazar múltiples líneas:

  1. **Llamando a `plot()` múltiples veces:** La forma más sencilla es llamar a la función `plot()` para cada conjunto de datos que quieras trazar. Cada llamada creará una nueva línea en el mismo gráfico.
  2. **Pasando múltiples argumentos a `plot()`:** Puedes pasar múltiples pares de argumentos x e y a una sola llamada de `plot()`. Por ejemplo, `plt.plot(x1, y1, x2, y2)`.

Es importante recordar incluir una leyenda para que los usuarios puedan distinguir claramente qué línea corresponde a qué conjunto de datos.

💻 Código de Ejemplo: Trazando múltiples líneas


import matplotlib.pyplot as plt
import numpy as np

x = np.array([0, 1, 2, 3])
y1 = np.array([3, 8, 1, 10])
y2 = np.array([6, 2, 7, 5])

plt.plot(x, y1, label='Línea 1')
plt.plot(x, y2, label='Línea 2')

plt.xlabel("Eje X")
plt.ylabel("Eje Y")
plt.title("Gráfico con múltiples líneas")
plt.legend()
plt.grid(True)
plt.show()
            

En este ejemplo, hemos llamado a `plt.plot()` dos veces para trazar dos líneas diferentes en el mismo gráfico. Hemos proporcionado etiquetas para cada línea, lo que nos permite mostrar una leyenda.

📊 Ejemplo Visual Interactivo (Generado con JavaScript)

👆 Este gráfico generado con JavaScript muestra dos líneas trazadas en el mismo plano, cada una representando un conjunto de datos diferente. La leyenda ayuda a identificar cada línea.




Publicar un comentario

0 Comentarios