1. Introducción a Matplotlib
❮ AnteriorPróximo ❯
Instalación de Matplotlib
Si ya tiene Python y PIP instalados en un sistema, entonces la instalación
de Matplotlib es muy fácil.
Instálalo usando este comando:
C:UsersYour Name>pip install matplotlib
Si este comando falla, use una distribución de python que ya tenga
instalado Matplotlib, como Anaconda, Spyder, etc.
Importar Matplotlib
Una vez que Matplotlib esté instalado, impórtelo en sus aplicaciones
agregando la declaración:import module
import matplotlib
Ahora Matplotlib está importado y listo para usar:
Comprobando la versión de Matplotlib
La cadena de versión se almacena en el __version__ atributo.
Ejemplo
2. import matplotlib
print(matplotlib.__version__)
Inténtalo tú mismo "
Nota: se utilizan dos guiones bajos en __version__.
Pyplot de Matplotlib
❮ AnteriorPróximo ❯
Pyplot
La mayoría de las utilidades de Matplotlib se encuentran en
el pyplotsubmódulo y, por lo general, se importan con el pltalias:
import matplotlib.pyplot as plt
Ahora se puede hacer referencia al paquete Pyplot como plt.
Ejemplo
Dibuja una línea en un diagrama desde la posición (0,0) hasta la posición
(6,250):
import matplotlib.pyplot as plt
import numpy as np
xpoints = np.array([0, 6])
ypoints = np.array([0, 250])
plt.plot(xpoints, ypoints)
plt.show()
Resultado:
3. Inténtalo tú mismo "
Aprenderá más sobre dibujar (trazar) en los próximos capítulos.
Trazado de Matplotlib
❮ AnteriorPróximo ❯
Trazado de puntos x e y
La plot()función se utiliza para dibujar puntos (marcadores) en un
diagrama.
Por defecto, la plot()función dibuja una línea de punto a punto.
La función toma parámetros para especificar puntos en el diagrama.
4. El parámetro 1 es una matriz que contiene los puntos en el eje x .
El parámetro 2 es una matriz que contiene los puntos en el eje y .
Si necesitamos trazar una línea de (1, 3) a (8, 10), tenemos que pasar dos
matrices [1, 8] y [3, 10] a la función de trazado.
Ejemplo
Dibuja una línea en un diagrama desde la posición (1, 3) hasta la posición
(8, 10):
import matplotlib.pyplot as plt
import numpy as np
xpoints = np.array([1, 8])
ypoints = np.array([3, 10])
plt.plot(xpoints, ypoints)
plt.show()
Resultado:
5. Inténtalo tú mismo "
El eje x es el eje horizontal.
El eje y es el eje vertical.
Trazado sin línea
Para trazar solo los marcadores, puede usar el parámetro de notación de
cadena de método abreviado 'o', que significa 'anillos'.
Ejemplo
Dibuja dos puntos en el diagrama, uno en la posición (1, 3) y otro en la
posición (8, 10):
import matplotlib.pyplot as plt
import numpy as np
6. xpoints = np.array([1, 8])
ypoints = np.array([3, 10])
plt.plot(xpoints, ypoints, 'o')
plt.show()
Resultado:
Inténtalo tú mismo "
Aprenderá más sobre los marcadores en el próximo capítulo.
Puntos Múltiples
Puede trazar tantos puntos como desee, solo asegúrese de tener la misma
cantidad de puntos en ambos ejes.
7. Ejemplo
Dibuja una línea en un diagrama desde la posición (1, 3) a (2, 8) luego a
(6, 1) y finalmente a la posición (8, 10):
import matplotlib.pyplot as plt
import numpy as np
xpoints = np.array([1, 2, 6, 8])
ypoints = np.array([3, 8, 1, 10])
plt.plot(xpoints, ypoints)
plt.show()
Resultado:
Inténtalo tú mismo "
8. Puntos X predeterminados
Si no especificamos los puntos en el eje x, obtendrán los valores
predeterminados 0, 1, 2, 3, (etc. dependiendo de la longitud de los puntos
y).
Entonces, si tomamos el mismo ejemplo anterior y dejamos fuera los
puntos x, el diagrama se verá así:
Ejemplo
Trazado sin puntos x:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10, 5, 7])
plt.plot(ypoints)
plt.show()
Resultado:
9. Inténtalo tú mismo "
Los puntos x en el ejemplo anterior son [0, 1, 2, 3, 4, 5].
Marcadores Matplotlib
❮ AnteriorPróximo ❯
marcadores
Puede usar el argumento de palabra clave markerpara enfatizar cada punto
con un marcador específico:
Ejemplo
10. Marque cada punto con un círculo:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10])
plt.plot(ypoints, marker = 'o')
plt.show()
Resultado:
Inténtalo tú mismo "
Ejemplo
Marque cada punto con una estrella:
...
plt.plot(ypoints, marker = '*')
...
11. Resultado:
Inténtalo tú mismo "
ANUNCIO PUBLICITARIO
Referencia de marcador
Puedes elegir cualquiera de estos marcadores:
Marker Description
12. 'o' Circle
'*' Star
'.' Point
',' Pixel
'x' X
'X' X (filled)
'+' Plus
'P' Plus (filled)
's' Square
'D' Diamond
'd' Diamond (thin)
13. 'p' Pentagon
'H' Hexagon
'h' Hexagon
'v' Triangle Down
'^' Triangle Up
'<' Triangle Left
'>' Triangle Right
'1' Tri Down
'2' Tri Up
'3' Tri Left
'4' Tri Right
14. '|' Vline
'_' Hline
Cadenas de formatofmt
También puede usar el parámetro de notación de cadena de método
abreviado para especificar el marcador.
Este parámetro también se llama fmty se escribe con esta sintaxis:
marker|line|color
Ejemplo
Marque cada punto con un círculo:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10])
plt.plot(ypoints, 'o:r')
plt.show()
Resultado:
15. Inténtalo tú mismo "
El valor del marcador puede ser cualquiera de la referencia del marcador
anterior.
El valor de línea puede ser uno de los siguientes:
Línea de referencia
Line Syntax Description
'-' Solid line
16. ':' Dotted line
'--' Dashed line
'-.' Dashed/dotted line
Nota: Si omite el valor de la línea en el parámetro fmt, no se trazará
ninguna línea.
El valor de color corto puede ser uno de los siguientes:
Referencia de color
Color Syntax Description
'r' Red
'g' Green
'b' Blue
'c' Cyan
'm' Magenta
17. 'y' Yellow
'k' Black
'w' White
Tamaño del marcador
Puede usar el argumento de palabra clave markersizeo la versión más
corta mspara establecer el tamaño de los marcadores:
Ejemplo
Establezca el tamaño de los marcadores en 20:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10])
plt.plot(ypoints, marker = 'o', ms = 20)
plt.show()
Resultado:
18. Inténtalo tú mismo "
Color del marcador
Puede usar el argumento de palabra clave markeredgecoloro el más
corto mecpara establecer el color del borde de los marcadores:
Ejemplo
Establezca el color EDGE en rojo:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10])
plt.plot(ypoints, marker = 'o', ms = 20, mec = 'r')
plt.show()
19. Resultado:
Inténtalo tú mismo "
Puede usar el argumento de palabra clave markerfacecoloro el más
corto mfcpara establecer el color dentro del borde de los marcadores:
Ejemplo
Establece el color de CARA en rojo:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10])
plt.plot(ypoints, marker = 'o', ms = 20, mfc = 'r')
plt.show()
Resultado:
20. Inténtalo tú mismo "
Utilice losmec argumentos y mfcpara colorear todo el marcador :
Ejemplo
Establezca el color del borde y la cara en rojo:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10])
plt.plot(ypoints, marker = 'o', ms = 20, mec = 'r', mfc = 'r')
plt.show()
Resultado:
21. Inténtalo tú mismo "
También puede usar valores de color hexadecimales :
Ejemplo
Marca cada punto con un hermoso color verde:
...
plt.plot(ypoints, marker = 'o', ms = 20, mec = '#4CAF50', mfc
= '#4CAF50')
...
Resultado:
22. Inténtalo tú mismo "
O cualquiera de los 140 nombres de colores admitidos .
Ejemplo
Marque cada punto con el color llamado "hotpink":
...
plt.plot(ypoints, marker = 'o', ms = 20, mec = 'hotpink', mfc
= 'hotpink')
...
Resultado:
23. Línea Matplotlib
❮ AnteriorPróximo ❯
Estilo de línea
Puede usar el argumento de palabra clave linestyle, o más corto ls, para
cambiar el estilo de la línea trazada:
Ejemplo
Utilice una línea de puntos:
import matplotlib.pyplot as plt
import numpy as np
24. ypoints = np.array([3, 8, 1, 10])
plt.plot(ypoints, linestyle = 'dotted')
plt.show()
Resultado:
Inténtalo tú mismo "
Ejemplo
Utilice una línea discontinua:
plt.plot(ypoints, linestyle = 'dashed')
Resultado:
25. Inténtalo tú mismo "
ANUNCIO PUBLICITARIO
Sintaxis más corta
El estilo de línea se puede escribir en una sintaxis más corta:
linestylese puede escribir como ls.
dottedse puede escribir como :.
dashedse puede escribir como --.
Ejemplo
26. Sintaxis más corta:
plt.plot(ypoints, ls = ':')
Resultado:
Inténtalo tú mismo "
Estilos de línea
Puedes elegir cualquiera de estos estilos:
Style Or
27. 'solid' (default) '-'
'dotted' ':'
'dashed' '--'
'dashdot' '-.'
'None' '' or ' '
Color de linea
Puede usar el argumento de palabra clave coloro el más corto cpara
establecer el color de la línea:
Ejemplo
Establezca el color de la línea en rojo:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10])
plt.plot(ypoints, color = 'r')
plt.show()
Resultado:
28. Inténtalo tú mismo "
También puede usar valores de color hexadecimales :
Ejemplo
Parcela con una hermosa línea verde:
...
plt.plot(ypoints, c = '#4CAF50')
...
Resultado:
29. Inténtalo tú mismo "
O cualquiera de los 140 nombres de colores admitidos .
Ejemplo
Parcela con el color llamado "hotpink":
...
plt.plot(ypoints, c = 'hotpink')
...
Resultado:
30. Inténtalo tú mismo "
Ancho de línea
Puede usar el argumento de palabra clave linewidtho el más corto lwpara
cambiar el ancho de la línea.
El valor es un número flotante, en puntos:
Ejemplo
Parcela con una línea de 20,5 puntos de ancho:
import matplotlib.pyplot as plt
import numpy as np
ypoints = np.array([3, 8, 1, 10])
31. plt.plot(ypoints, linewidth = '20.5')
plt.show()
Resultado:
Inténtalo tú mismo "
Líneas Múltiples
Puede trazar tantas líneas como desee simplemente agregando
más plt.plot()funciones:
Ejemplo
Dibuja dos líneas especificando una plt.plot()función para cada línea:
import matplotlib.pyplot as plt
import numpy as np
32. y1 = np.array([3, 8, 1, 10])
y2 = np.array([6, 2, 7, 11])
plt.plot(y1)
plt.plot(y2)
plt.show()
Resultado:
Inténtalo tú mismo "
También puede trazar muchas líneas agregando los puntos de los ejes x e y
para cada línea en la misma plt.plot()función.
(En los ejemplos anteriores, solo especificamos los puntos en el eje y, lo
que significa que los puntos en el eje x obtuvieron los valores
predeterminados (0, 1, 2, 3).)
Los valores x e y vienen en pares:
33. Ejemplo
Dibuje dos líneas especificando los valores de los puntos x e y para ambas
líneas:
import matplotlib.pyplot as plt
import numpy as np
x1 = np.array([0, 1, 2, 3])
y1 = np.array([3, 8, 1, 10])
x2 = np.array([0, 1, 2, 3])
y2 = np.array([6, 2, 7, 11])
plt.plot(x1, y1, x2, y2)
plt.show()
Resultado: