Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Exercicio Vendas

Olá ! Podem me ajudar?

Estou customizando o exercicio de vendas, mas não lembro e não localizei em minhas pesquisas como ajusto o espaço nesse local em específico. Sei que existe a função fig.subplots_adjust(),mas não estou conseguindo configurar nessa localização. Agradeço quem puder me auxiliar.

Abs.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas

Não sei se é o mais correto mas no meu eu usei o parâmetro va='center'

solução!

Oi, Ticiane! tudo bem?

Para aumentar o espaçamento entre o título e os gráficos, você pode ajustar um parâmetro chamado top no método subplots_adjust. Este parâmetro controla a posição superior do subplots em relação à figura e, ao diminuí-lo, você cria mais espaço entre o título geral e os gráficos.

Aqui está um exemplo completo para você:

1. Criação do DataFrame

import pandas as pd

lojas = ['A', 'B', 'C', 'D']

vendas_2022 = {'Jan': [100, 80, 150, 50],
    'Fev': [120, 90, 170, 60],
    'Mar': [150, 100, 200, 80],
    'Abr': [180, 110, 230, 90],
    'Mai': [220, 190, 350, 200],
    'Jun': [230, 150, 280, 120],
    'Jul': [250, 170, 300, 140],
    'Ago': [260, 180, 310, 150],
    'Set': [240, 160, 290, 130],
    'Out': [220, 140, 270, 110],
    'Nov': [400, 220, 350, 190],
    'Dez': [300, 350, 400, 250]
}

# Criando DataFrame
df = pd.DataFrame(vendas_2022, index=lojas)

2. Criação do gráfico

Ao criar o gráfico, podemos usar top=0.85, por exemplo, para ajustar a posição superior dos subplots, criando mais espaço para o título geral. Você pode ajustar o valor de top conforme necessário para obter o espaçamento desejado.

Obs: quanto menor o valor colocado: maior será o espaçamento.

import matplotlib.pyplot as plt

# Criar a figura e os subplots
fig, axs = plt.subplots(2, 2, figsize=(14, 8))

# Ajustar os espaçamentos entre os subplots
plt.subplots_adjust(wspace=0.3, hspace=0.4, top=0.85)

# Adicionando um título geral para os subplots
fig.suptitle('Vendas no período de janeiro a dezembro de 2022 nas lojas A,B,C e D', fontsize=20)

# Lista de cores
cores = ['darkviolet', 'green', 'darkblue', 'coral']

#Loop para plotar e customizar os subplots
for i, ax in enumerate(axs.flat):
    ax.plot(df.loc[df.index[i]], color=cores[i], lw=3)
    ax.set_title(f'Vendas na loja {df.index[i]}', loc='left', fontsize=16)
    ax.set_xlabel('Mês', fontsize=14)
    ax.set_ylabel('Número de vendas', fontsize=14)
    ax.tick_params(labelsize=12)
    ax.grid(color='lightgrey')

plt.show()

Dessa forma, você cria mais espaço entre o título geral e os gráficos, tornando a visualização mais clara e organizada. Qualquer dúvida, estou à disposição!