Buscar..


Función boxplot

Matplotlib tiene su propia implementación de boxplot . Los aspectos relevantes de esta función es que, de forma predeterminada, el diagrama de caja muestra la mediana (percentil 50%) con una línea roja. La caja representa Q1 y Q3 (percentiles 25 y 75), y los bigotes dan una idea del rango de los datos (posiblemente en Q1 - 1.5 IQR; Q3 + 1.5 IQR; siendo IQR el rango intercuartil, pero esto carece de confirmación). También tenga en cuenta que las muestras que se encuentran más allá de este rango se muestran como marcadores (se denominan volantes).

NOTA: No todas las implementaciones de boxplot siguen las mismas reglas. Quizás el diagrama de caja de caja más común utiliza los bigotes para representar el mínimo y el máximo (haciendo que los volantes no existan). Observe también que esta trama es a veces llamado diagrama de cajas y bigotes y el diagrama de caja y bigotes.

La siguiente receta muestra algunas de las cosas que puede hacer con la implementación matplotlib actual de boxplot:

import matplotlib.pyplot as plt
import numpy as np

X1 = np.random.normal(0, 1, 500)
X2 = np.random.normal(0.3, 1, 500)

# The most simple boxplot
plt.boxplot(X1)
plt.show()

# Changing some of its features
plt.boxplot(X1, notch=True, sym="o") # Use sym="" to shown no fliers; also showfliers=False
plt.show()

# Showing multiple boxplots on the same window
plt.boxplot((X1, X2), notch=True, sym="o", labels=["Set 1", "Set 2"])
plt.show()

# Hidding features of the boxplot
plt.boxplot(X2, notch=False, showfliers=False, showbox=False, showcaps=False, positions=[4], labels=["Set 2"])
plt.show()

# Advanced customization of the boxplot
line_props = dict(color="r", alpha=0.3)
bbox_props = dict(color="g", alpha=0.9, linestyle="dashdot")
flier_props = dict(marker="o", markersize=17)
plt.boxplot(X1, notch=True, whiskerprops=line_props, boxprops=bbox_props, flierprops=flier_props)
plt.show()

Este resultado en las siguientes parcelas:

Predeterminado matplotlib boxplot

  1. Predeterminado matplotlib boxplot

Cambiando algunas características del diagrama de caja usando argumentos de función

  1. Cambiando algunas características del diagrama de caja usando argumentos de función

Cuadro de caja múltiple en la misma ventana de gráfico

  1. Cuadro de caja múltiple en la misma ventana de gráfico

Ocultando algunas características del boxplot.

  1. Ocultando algunas características del boxplot.

Personalización avanzada de un boxplot usando accesorios

  1. Personalización avanzada de un boxplot usando accesorios

Si tiene la intención de hacer algún tipo de personalización avanzada de su diagrama de caja debe saber que los apoyos de los diccionarios a construir (por ejemplo):

line_props = dict(color="r", alpha=0.3)
bbox_props = dict(color="g", alpha=0.9, linestyle="dashdot")
flier_props = dict(marker="o", markersize=17)
plt.boxplot(X1, notch=True, whiskerprops=line_props, boxprops=bbox_props, flierprops=flier_props)
plt.show()

... referirse principalmente (si no todos) a los objetos de Line2D . Esto significa que solo los argumentos disponibles en esa clase son modificables. Notará la existencia de palabras clave como whiskerprops , boxprops , flierprops y capprops . Estos son los elementos que necesita para proporcionar un diccionario de accesorios para personalizarlo aún más.

NOTA: una mayor personalización del diagrama de caja con esta implementación puede resultar difícil. En algunos casos, el uso de otros elementos de matplotlib como parches para crear los propios gráficos de caja puede ser ventajoso (cambios considerables en el elemento de caja, por ejemplo).



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow