Como adicionar barras de erro a gráficos em python


Freqüentemente, você pode querer adicionar barras de erro aos gráficos em Python para capturar incertezas em torno de medições ou valores calculados. Felizmente, isso é fácil de fazer usando a biblioteca matplotlib.

Este tutorial explica como adicionar barras de erro a gráficos de barras e gráficos de linhas em Python.

Barras de erro em gráficos de barras

Suponha que temos o seguinte conjunto de dados de 10 valores em Python:

 import numpy as np
import matplotlib.pyplot as plt

#define dataset
data = [4, 6, 6, 8, 9, 14, 16, 16, 17, 20]

Para criar um gráfico de barras com barras de erro para este conjunto de dados, podemos definir a largura das barras de erro como erro padrão , que é calculado como

Erro padrão = s / √n

Ouro:

  • s: desvio padrão da amostra
  • n: tamanho da amostra

O código a seguir mostra como calcular o erro padrão para este exemplo:

 #calculate standard error
std_error = np.std(data, ddof=1) / np.sqrt(len(data))

#view standard error
std_error

1.78

Finalmente, podemos criar o gráfico de barras usando barras de erro com largura igual ao erro padrão:

 #define chart 
fig, ax = plt.subplots()

#create chart
ax.bar(x=np.arange(len(data)), #x-coordinates of bars
       height=data, #height of bars
       yerr=std_error, #error bar width
       capsize=4) #length of error bar caps 

Gráfico de barras com barras de erro em Python

O erro padrão acabou sendo 1,78 . Esta é a largura da barra de erro que se estende em qualquer direção a partir das estimativas pontuais no gráfico. Por exemplo, o valor da primeira barra no gráfico é 4, portanto possui uma barra de erro que se estende de:

  • Extremidade inferior: 4 – 178 = 2,22
  • Extremidade superior: 4 + 1,78 = 5,78

Cada barra de erro no gráfico tem a mesma largura.

Barras de erro em gráficos de linhas

O código a seguir mostra como criar um gráfico de linhas com barras de erro para o mesmo conjunto de dados:

 import numpy as np
import matplotlib.pyplot as plt

#define data
data = [4, 6, 6, 8, 9, 14, 16, 16, 17, 20]

#define x and y coordinates
x = np.arange(len(data))
y = data

#create line chart with error bars
fig, ax = plt.subplots()

ax.errorbar(x, y,
            yerr=std_error,
            capsize=4) 

Gráfico de linhas com barras de erro em Python

Observe que o argumento yerr diz ao Python para criar barras de erro verticais. Em vez disso, poderíamos usar barras verticais horizontais usando o argumento xerr :

 #create line chart with horizontal error bars
fig, ax = plt.subplots()

ax.errorbar(x, y,
            xerr =std_error,
            capsize=4) 

Barras de erro no gráfico Python

Você pode encontrar mais tutoriais de Python aqui .

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *