Tutorial de Matplotlib - Gráfico de líneas
Empezamos trazando el tipo de gráfico básico - gráfico de líneas. El plot
puede trazar fácilmente líneas como la línea lineal o la línea curva, y también tiene diferentes configuraciones como colores, ancho, tamaño de marcador, etc.
Línea lineal Matplotlib
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 9, 10)
y = 2 * x
plt.plot(x, y, "b-")
plt.show()
Traza la línea de y=2*x
, donde x está en el rango entre 0 y 9.
plt.plot(x, y, "b-")
Traza los datos de x
y y
con un estilo de línea de b
- color azul y -
- línea sólida.
Línea curva Matplotlib
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 4 * np.pi, 1000)
y = np.sin(x)
plt.plot(x, y, "r--")
plt.show()
Genera una forma de onda sinusoidal, y tiene el estilo de línea como color rojo - r
y línea discontinua - --
.
Tipo de línea Matplotlib
Puede cambiar el tipo de línea como ancho, color y estilo de línea con diferentes argumentos de entrada en la función plt.plot()
.
matplotlib.pyplot.plot(*args, **kwargs)
Parámetros
Nombre | Descritpion |
---|---|
x, y |
Las coordenadas horizontales / verticales de los puntos de datos |
fmt |
Una cadena de formato, por ejemplo, b- para la línea sólida azul. |
**kwargs
Propiedad | Descripción |
---|---|
color o c |
cualquier color matplotlib |
figure |
una instancia Figure |
label |
Objeto |
linestyle o ls |
[‘solid’ | ‘dashed’, ‘dashdot’, ‘dotted’ | (offset, on-off-dash-seq) | '-' ] |
linewidth o lw |
ancho de línea en puntos |
marker |
Un estilo de marcador válido |
markersize o ms |
float |
xdata |
Matriz 1D |
ydata |
Matriz 1D |
zorder |
float |
Color de la línea
Tienes algunos métodos para nombrar el color en el argumento color
.
Alias de una sola letra
The basic built-in colors have the alias as below,
Alias | Color |
---|---|
b |
Azul |
g |
verde |
r |
Rojo |
c |
cyan |
m |
magenta |
y |
amarillo |
k |
negro |
w |
blanco |
Cadena de caracteres Html Hexagonal
Puedes pasar una cadena hexadecimal html válida al parámetro color
, como
color = "#f44265"
Tupla RGB
También puede especificar el color usando una tupla R,G,B
, donde los valores de R, G, B están en el rango de [0, 1]
en lugar del rango normal de [0, 255]
.
El color representado con la cadena hexadecimal html de arriba tiene el valor RGB
de (0.9569, 0.2588, 0.3891)
.
color = (0.9569, 0.2588, 0.3891)
Estilo de línea
Matplotlib tiene 4 estilos de línea incorporados,
Estilo de línea | |
---|---|
- |
|
-- |
|
: |
|
:- |
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 4 * np.pi, 1000)
for index, line_style in enumerate(["-", "--", ":", "-."]):
y = np.sin(x - index * np.pi / 2)
plt.plot(x, y, "k", linestyle=line_style, lw=2)
plt.title("Line Style")
plt.grid(True)
plt.show()
Ancho de la línea
Puede especificar el ancho de línea con el parámetro linewidth
como en
linewidth = 2 # unit is points
o simplemente usar su abreviatura,
lw = 2
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 20, 21)
for line_width in [0.5, 1, 2, 4, 8]:
y = line_width * x
plt.plot(x, y, "k", linewidth=line_width)
plt.title("Line Width")
plt.grid(True)
plt.show()
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook