Revista Informática

Inclusión de barras de error en Matplotlib

Publicado el 17 octubre 2022 por Daniel Rodríguez @analyticslane
Inclusión de barras de error en Matplotlib

A la hora de la presentación de resultados experimentales la inclusión de barras de error en las gráficas es clave para comunicar la confianza que se tiene en los valores presentados. Por eso, en la mayoría de las bibliotecas para la generación de gráficos existen funciones para ello. La función con la que se pueden crear gráficas con barras de barras de error en Matplotlib es errorbar().

Crear una gráfica con barras de error en Matplotlib

A diferencia de la mayoría de las gráficas que se pueden crear con Matplotlib en las que solamente son necesarios los valores de x e y. Para crear una gráfica con barras de error es necesario además un valor para el error. Con estos datos se puede crear fácilmente una gráfica mediante la función errorbar().

En este caso a la función se le pasa los valores de x, los valores de y y el error en el eje y. Produciendo en este caso la siguiente gráfica.

Gráfica básica con barras de error en Matplotlib

Posiblemente este no es el resultado esperado. Normalmente las barras de error se suelen usar en gráficos de dispersión. Además, generalmente se suele dibujar una línea que limite la barra. Para solucionar esto se puede usar dos opciones de la función fmt y capsize. Mediante la primera se puede indicar la forma de los puntos y la línea que los une. Por defecto la gráfica es una línea que une puntos sin marca, pero con la opción 'o' se mostrarían marcas sin líneas. Por otro lado, la segunda permite fijar el tamaño de las líneas que delimitan las barras, valor que por defecto es 0. Así una manera de obtener un gráfico de dispersión con barras de error sería algo como lo que muestra a continuación.

Gráfica de dispersión básica con barras de error en Matplotlib

Con lo que se obtiene como resultado la siguiente gráfica.

Barras de error en el eje x

También es posible incluir barras de error en el eje x de la gráfica. Usando para ello la propiedad xerr de la función. Esta propiedad, al igual que xerr con la que se indica el error para el eje y, también admite valores escalares cuando el tamaño de la barra es siempre igual. Así, se puede agregar un error de 0.1 a cada uno de los puntos de la gráfica anterior con el siguiente código.

Lo que tiene como resultado la siguiente gráfica.

Gráfica de dispersión básica con barras de error tanto para el eje x como para el y

Barras de error en gráficas de barras

Dado que en Matplotlib es posible crear gráficas combinando más de una función, al usar bar() y errorbar() conjuntamente se puede obtener una gráfica de barras con barras de error. Lo que se puede hacer como se muestra en la siguiente línea.

En este caso se ha usado los mismos datos para las gráficas de barra y las barras de error. Para evitar destacar la barra se ha cambiado el color de esta con el parámetro ecolor. Además, también se ha eliminado tanto las líneas como las marcas ya que no son necesarias mediante el parámetro fmt.

Obteniendo como resultado la siguiente figura.

Gráfica de barras con barras de error

Conclusiones

En esta publicación se ha visto cómo se puede crear gráficos con barras de error en Matplotlib mediante el uso de la función errorbar(). Una herramienta necesaria para comunicar cuál es el nivel de confianza que tiene los resultados presentados.


Volver a la Portada de Logo Paperblog