Introdução
Neste laboratório, exploraremos o ciclo de vida de um gráfico usando Matplotlib. Começaremos com dados brutos e terminaremos salvando uma visualização personalizada. Aprenderemos como criar um gráfico, controlar seu estilo, personalizar sua aparência, combinar múltiplas visualizações e salvar o gráfico no disco.
Dicas para a VM
Após a inicialização da VM, clique no canto superior esquerdo para mudar para a aba Notebook e acessar o Jupyter Notebook para praticar.
Às vezes, pode ser necessário aguardar alguns segundos para que o Jupyter Notebook termine de carregar. A validação das operações não pode ser automatizada devido a limitações no Jupyter Notebook.
Se você enfrentar problemas durante o aprendizado, sinta-se à vontade para perguntar ao Labby. Forneça feedback após a sessão, e resolveremos o problema prontamente para você.
Importar os módulos necessários
Primeiramente, precisamos importar os módulos necessários: Matplotlib e NumPy.
import matplotlib.pyplot as plt
import numpy as np
Preparar os dados
Usaremos um conjunto de dados de exemplo que contém informações de vendas para diferentes empresas. Aqui está um exemplo dos dados:
data = {'Barton LLC': 109438.50,
'Frami, Hills and Schmidt': 103569.59,
'Fritsch, Russel and Anderson': 112214.71,
'Jerde-Hilpert': 112591.43,
'Keeling LLC': 100934.30,
'Koepp Ltd': 103660.54,
'Kulas Inc': 137351.96,
'Trantow-Barrows': 123381.38,
'White-Trantow': 135841.99,
'Will LLC': 104437.60}
group_data = list(data.values())
group_names = list(data.keys())
group_mean = np.mean(group_data)
Criar o gráfico
Usaremos a visualização de gráfico de barras (barplot) para representar os dados de vendas. Siga estes passos:
- Crie uma figura e um objeto de eixo usando
plt.subplots().
fig, ax = plt.subplots()
- Plote os dados usando o método
barh()do objeto de eixo.
ax.barh(group_names, group_data)
Personalizar o estilo do gráfico
Podemos alterar o estilo do nosso gráfico para torná-lo mais visualmente atraente. Siga estes passos:
- Imprima a lista de estilos disponíveis usando
print(plt.style.available).
print(plt.style.available)
- Escolha um estilo e aplique-o usando
plt.style.use(style_name).
plt.style.use('fivethirtyeight')
- Vamos mostrar o gráfico novamente.
fig, ax = plt.subplots()
ax.barh(group_names, group_data)
Personalizar a aparência do gráfico
Podemos personalizar ainda mais a aparência do nosso gráfico. Siga estes passos:
- Rotacione os rótulos do eixo x para torná-los mais legíveis.
labels = ax.get_xticklabels()
plt.setp(labels, rotation=45, horizontalalignment='right')
- Defina os limites, rótulos e título dos eixos x e y.
ax.set(xlim=[-10000, 140000],
xlabel='Total Revenue',
ylabel='Company',
title='Company Revenue')
- Mostre o gráfico novamente.
fig, ax = plt.subplots()
ax.barh(group_names, group_data)
labels = ax.get_xticklabels()
plt.setp(labels, rotation=45, horizontalalignment='right')
ax.set(xlim=[-10000, 140000], xlabel='Total Revenue', ylabel='Company',
title='Company Revenue')
Combinar múltiplas visualizações
Podemos adicionar elementos de gráfico adicionais à nossa visualização. Siga estes passos:
- Adicione uma linha vertical representando a média dos dados de vendas.
ax.axvline(group_mean, ls='--', color='r')
- Anote novas empresas no gráfico.
for group in [3, 5, 8]:
ax.text(145000, group, "New Company", fontsize=10, verticalalignment="center")
- Ajuste a posição do título do gráfico.
ax.title.set(y=1.05)
- O código completo é mostrado abaixo.
fig, ax = plt.subplots(figsize=(8, 8))
ax.barh(group_names, group_data)
labels = ax.get_xticklabels()
plt.setp(labels, rotation=45, horizontalalignment='right')
## Add a vertical line, here we set the style in the function call
ax.axvline(group_mean, ls='--', color='r')
## Annotate new companies
for group in [3, 5, 8]:
ax.text(145000, group, "New Company", fontsize=10,
verticalalignment="center")
## Now we move our title up since it's getting a little cramped
ax.title.set(y=1.05)
ax.set(xlim=[-10000, 140000], xlabel='Total Revenue', ylabel='Company',
title='Company Revenue')
plt.show()
Salvar o gráfico
Finalmente, podemos salvar nosso gráfico no disco. Siga estes passos:
- Imprima os formatos de arquivo suportados usando
print(fig.canvas.get_supported_filetypes()).
print(fig.canvas.get_supported_filetypes())
- Salve a figura como um arquivo de imagem usando
fig.savefig(file_path, transparent=False, dpi=80, bbox_inches="tight"). Descomente esta linha para salvar a figura.
fig.savefig('sales.png', transparent=False, dpi=80, bbox_inches="tight")
Você pode abrir o arquivo de imagem salvo usando o explorador de arquivos na barra lateral esquerda.
Resumo
Neste laboratório, aprendemos sobre o ciclo de vida de um gráfico usando Matplotlib. Começamos criando um gráfico, controlando seu estilo, personalizando sua aparência, combinando múltiplas visualizações e salvando o gráfico no disco. Matplotlib oferece uma ampla gama de opções de personalização para criar gráficos visualmente atraentes e informativos.