![](https://hub.asimov.academy/wp-content/uploads/2024/06/ThumbCursoPythonMasterClass-14.webp)
Os boxplots são uma ferramenta estatística poderosa para visualizar a distribuição de dados. Eles são úteis para identificar outliers, mediana, quartis e a dispersão dos dados. Neste tutorial, vamos aprender como criar e configurar um boxplot em Python utilizando a biblioteca Matplotlib.
Introdução ao Boxplot
Antes de mergulharmos na programação, é importante entender o que é um boxplot. Um boxplot, também conhecido como diagrama de caixa, é uma representação gráfica da distribuição de um conjunto de dados. Ele é composto por uma “caixa”, que vai do primeiro quartil (Q1) ao terceiro quartil (Q3), e uma “mediana”, que é representada por uma linha dentro da caixa. Os “bigodes” se estendem do mínimo ao máximo, excluindo os outliers, que são representados por pontos fora dos bigodes.
![](https://hub.asimov.academy/wp-content/uploads/2024/02/boxplot.png)
Para mais detalhes sobre o boxplot, leia nosso tutorial sobre como interpretar um boxplot.
Criando um Boxplot com Matplotlib
Para criar um boxplot em Python, você precisará da biblioteca Matplotlib. Se você ainda não a tem instalada, pode fazê-lo usando o pip:
pip install matplotlib
Agora, vamos ao código:
Importando a Biblioteca
import matplotlib.pyplot as plt
Preparando os Dados
Vamos criar alguns dados fictícios para o nosso exemplo:
# Dados fictícios
dados = [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 60]
Criando o Boxplot
import matplotlib.pyplot as plt
dados = [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 60]
plt.boxplot(dados)
plt.title('Boxplot de Dados Fictícios')
plt.ylabel('Valores')
plt.show()
TestarCom essas linhas de código, você terá um boxplot simples dos dados fornecidos:
![](https://hub.asimov.academy/wp-content/uploads/2024/02/boxplot01-1.png)
Configurando o Boxplot
Agora que temos um boxplot básico, vamos configurá-lo para torná-lo mais informativo.
Alterando a Cor da Caixa
import matplotlib.pyplot as plt
dados = [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 60]
plt.boxplot(dados, patch_artist=True, boxprops=dict(facecolor='lightblue'))
plt.title('Boxplot de Dados Fictícios')
plt.ylabel('Valores')
plt.show()
Testar![](https://hub.asimov.academy/wp-content/uploads/2024/02/boxplot02.png)
Adicionando Bigodes Personalizados
Você pode personalizar os bigodes com o argumento whis
para estenderem-se a um alcance específico dos dados. Por exemplo, se passarmos whis=[10, 90]
, os limites do boxplot irão de 10% a 90% da distribuição de dados (o padrão é ir de 5% a 95%):
import matplotlib.pyplot as plt
dados = [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 60]
plt.boxplot(dados, whis=[10, 90])
plt.title('Boxplot de Dados Fictícios')
plt.ylabel('Valores')
plt.show()
Testar![](https://hub.asimov.academy/wp-content/uploads/2024/02/boxplot03.png)
Ocultando os Outliers
Para ocultar os outliers, você pode adicionar o parâmetro showfliers=False
:
import matplotlib.pyplot as plt
dados = [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 60]
plt.boxplot(dados, showfliers=False)
plt.title('Boxplot de Dados Fictícios')
plt.ylabel('Valores')
plt.show()
Testar![](https://hub.asimov.academy/wp-content/uploads/2024/02/boxplot04.png)
Rotacionando os Eixos
Se você tiver rótulos com muito texto ao longo dos eixos, pode ser útil rotacioná-los para melhor visualização:
import matplotlib.pyplot as plt
dados = [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 60]
plt.boxplot(dados)
plt.title('Boxplot de Dados Fictícios')
plt.ylabel('Valores')
plt.xticks([1], ['Grupo 1'], rotation=45) # Rotaciona o rótulo do eixo x
plt.show()
Testar![](https://hub.asimov.academy/wp-content/uploads/2024/02/boxplot05.png)
Conclusão
Neste tutorial, você aprendeu como criar e configurar um boxplot em Python usando a biblioteca Matplotlib. Com essas habilidades, você pode começar a explorar a distribuição dos seus próprios conjuntos de dados e identificar características importantes como a mediana, quartis e outliers. Experimente com diferentes configurações para personalizar seus gráficos de acordo com suas necessidades.
![](https://hub.asimov.academy/wp-content/uploads/2024/06/maxresdefault-6.jpg)
Comentários