En este tutorial explicamos que son los marcadores, todos los tipos de marcadores que tiene matplotlib, como cambiar su color y tamaño. Así podrás graficar con distintos símbolos en matplotlib en Python.
Un marcador es un símbolo que se coloca en el punto que vas a graficar. Las gráficas generalmente se hacen con líneas que unen esos puntos. Pero en ocasiones es buena opción no unir los puntos y poner distintos marcadores en cada punto para visualizar la gráfica de forma diferente.
O bien usar líneas y marcadores al mismo tiempo, para más detalle sobre esto ve a este enlace.
Resumen, marcadores en matplotlib
Tipos de marcadores.
En esta sección te mostramos todas las formas de marcadores que tiene matplotlib. Como cuadros, hexágonos, círculos, cruces, triángulos, guiones, estrellas, etc.
Como graficar con matplotlib.
Te explicamos la sintaxis para graficar con marcadores
import matplotlib.pyplot as plt x=[0,1,2,3] y=[0,1,2,3] plt.plot(x, y, "o") plt.show()
Tamaño de los marcadores.
Puedas cambiar el tamaño con “markersize”, de la siguiente manera:
plt.plot(x, y, "or", markersize=3)
Color de los marcadores.
Puedes cambiar el color del borde y del relleno del marcador usando los comandos “mfc” para el relleno y “mec” para el borde. Además puedes cambiar el tamaño del borde con “mew”.
plt.plot(x, y, "o", mfc="b", mec="b", markersize=12) plt.plot(x, z, "o", mfc="b", mec="k", mew="3", markersize=12)
Tipos de marcadores en matplotlib, Python.
Existen varias formas para los marcadores en matplotlib, a continuación te mostramos cuales son y cómo puedes usarlos.
A continuación puedes ver 3 graficas donde indicamos el comando que debes usar y el simbolo que obtendrás al usarlo.
Para más información ve a la página oficial de matplotlib.
Como graficar marcadores en matplotlib, Python.
Para agregar un marcador a matplotlib, podemos usar la siguiente sintaxis:
plt.plot(x, y, "o")
Así los puntos de x, y se graficarán con un punto “o”.
Un ejemplo graficando los puntos de x, y con una cruz “x” color rojo “r”.
plt.plot(x, y, "xr")
Y este otro donde los puntos de x, y se graficarán con una cruz “o” color azul “b” con línea punteada “:”.
plt.plot(x, y, "*b:")
El código es el siguiente:
import matplotlib.pyplot as plt x = [0,1,2,3,4,5,6,7,8,9,10] y = [] z = [] w = [] for i in range(len(x)): y.append(x[i]**2) z.append(x[i]**2 - 10) w.append(x[i]**2 - 20) plt.plot(x, y, "o") plt.plot(x, z, "xr") plt.plot(x, w, "*b:") plt.ylabel("Eje X") plt.xlabel("Eje Y") plt.show()
Tamaño de los marcadores.
Para cambiar el tamaño de los marcadores se usa el comando “markersize”, seguido por el tamaño del marcador.
En la siguiente grafica mostramos como cambia el tamaño del marcador, para un marcador tipo punto.
Y este es el código. Puedes ver como agregamos un color distinto a cada marcador.
import matplotlib.pyplot as plt x = [0,1,2,3,4,5,6,7,8,9,10] y = [] z = [] w = [] v = [] for i in range(len(x)): y.append(x[i]**2) z.append(x[i]**2 - 10) w.append(x[i]**2 - 20) v.append(x[i]**2 - 30) plt.plot(x, y, "ok", markersize=1) plt.plot(x, z, "or", markersize=3) plt.plot(x, w, "ob", markersize=5) plt.plot(x, v, "og", markersize=7) plt.ylabel("Eje X") plt.xlabel("Eje Y") plt.show()
Color de los marcadores, relleno y borde.
Los marcadores tienen 2 colores. Uno es el relleno “markerfacecolor” o “mfc”. Y el otro es el borde “markeredgecolor” o “mec” .
El borde también tiene un ancho de línea que se puede cambiar con ”markeredgewidth” o “mew”.
Para cambiar el color de todo el marcador, necesitamos cambiar el color del borde y de relleno, podemos utilizar la siguiente sintaxis:
plt.plot(x, y, "o", mfc="k", mec=”k”)
En el caso anterior, es un marcador tipo círculo, con relleno y borde color negro.
A continuación te mostramos que si hay diferencia al cambiar estos colores.
El código es el siguiente:
import matplotlib.pyplot as plt x = [0,1,2,3,4,5,6,7,8,9,10] y = [] z = [] w = [] v = [] for i in range(len(x)): y.append(x[i]**2) z.append(x[i]**2 - 10) w.append(x[i]**2 - 20) v.append(x[i]**2 - 30) plt.plot(x, y, "o", mfc="k", mec="k", markersize=12) plt.plot(x, z, "o", mfc ="k", mec="b", markersize=12) plt.plot(x, w, "o", mfc="b", mec="k", markersize=12) plt.plot(x, v, "o", mfc="b", mec="k", mew="3", markersize=12) plt.ylabel("Eje X") plt.xlabel("Eje Y") plt.show()
Hicimos el marcador más grande para poder notar con mayor claridad el efecto del borde y del relleno.
Para más tutoriales de matplotlib en Python ve a la sección de matplotlib.