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

Problema na geração de gráfico com barras horizontais

Prezado(as), bom dia. Minha codificação vem caminhando OK, mas apenas nos gráficos de barras é que tem algo dando errado. O Grafico aparece com barras minúsculas e com a numeração desalinhada. Saberiam dizer o que é?

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

2 respostas
solução!

Oi Bernado,

Solução

Para corrigir, você pode ajustar seu código da seguinte forma:

fig, ax = plt.subplots(figsize=(10, 6))
ax.barh(america_sul_sorted['Country'], america_sul_sorted['Total'], color='skyblue')

# Melhor posicionamento dos rótulos
for i, v in enumerate(america_sul_sorted['Total']):
    ax.text(v + max(america_sul_sorted['Total']) * 0.01, i, str(v), 
            color='black', fontsize=10, ha='left', va='center')

# Ajustes dos eixos
ax.set_frame_on(False)
ax.get_xaxis().set_visible(True)
ax.tick_params(axis='x', which='both', length=5)

plt.tight_layout()

Principais modificações:

  • Adição do plt.tight_layout() para melhor uso do espaço
  • Cálculo dinâmico do espaçamento dos rótulos usando max(america_sul_sorted['Total']) * 0.01
  • Ativação do eixo x com get_xaxis().set_visible(True)
  • Ajuste dos ticks do eixo x para melhor visualização

Estas alterações resultarão em um gráfico com barras proporcionais e números corretamente alinhados.

tux matrix    Caso este post o tenha ajudado, por favor, marcar como solucionado ☑️. Bons Estudos! 🤓

Ok, funcionou. Grato.