Tutoriais

Salvar Gráfico em Arquivo de Imagem com Matplotlib

Ana Maria Gomes 20 jun Básico 5xp
Compartilhar

Ao trabalhar com visualização de dados em Python, você pode se encontrar na situação de querer salvar seus gráficos como arquivos de imagem em vez de exibi-los em uma interface gráfica. Isso pode ser particularmente útil quando você precisa incluir as imagens em relatórios, apresentações ou compartilhá-las com colegas que podem não ter acesso ao código. Neste artigo, exploraremos como salvar seus gráficos como arquivos de imagem usando o Matplotlib, uma biblioteca de plotagem popular em Python.

Salvando Seu Gráfico como um Arquivo de Imagem

Para salvar um gráfico como um arquivo de imagem, você pode usar a função savefig() do módulo matplotlib.pyplot. Esta função permite salvar o gráfico em vários formatos de arquivo, como PNG ou PDF, que podem ser especificados pela extensão do arquivo. Aqui está um exemplo simples:

from matplotlib import pyplot as plt

# Seu código de plotagem
plt.plot([1, 2, 3], [1, 4, 9])

# Salvar o gráfico como uma imagem PNG
plt.savefig('foo.png')

# Salvar o gráfico como um PDF
plt.savefig('foo.pdf')

Este trecho de código salvará o gráfico no diretório de trabalho atual como ‘foo.png’ e ‘foo.pdf’. O formato PNG fornece uma saída rasterizada, enquanto o formato PDF oferece uma saída vetorizada.

Removendo Espaços em Branco Indesejados

Às vezes, você pode notar um espaço em branco extra ao redor da sua imagem salva. Para remover isso, você pode usar o argumento bbox_inches com o valor 'tight':

plt.savefig('foo.png', bbox_inches='tight')

Isso cortará qualquer espaço em branco excessivo ao redor do gráfico, resultando em um arquivo de imagem mais limpo.

Ordem de Salvar e Exibir

É importante observar a ordem na qual você salva e exibe seu gráfico. Se você chamar plt.show() antes de plt.savefig(), a imagem salva ficará em branco. Para evitar isso, sempre salve seu gráfico antes de exibi-lo:

plt.savefig('foo.png')
plt.show()

Lidando com o Modo Interativo e Fechando Figuras

Em alguns ambientes de desenvolvimento, como o Spyder com o modo interativo ativado, as figuras podem ser exibidas automaticamente. Para evitar isso e garantir que as figuras sejam salvas sem exibição, você pode fechar explicitamente a figura usando plt.close():

import matplotlib.pyplot as plt

# Criar figura e eixo
fig, ax = plt.subplots()

# Plotar seus dados
ax.plot([0, 1, 2], [10, 20, 3])

# Salvar a figura em arquivo
fig.savefig('caminho/para/salvar/imagem/para.png')

# Fechar a janela da figura
plt.close(fig)

Essa abordagem é particularmente útil quando você está salvando várias figuras em um loop e quer evitar ter várias janelas de figura abertas.

Resumo

Em resumo, salvar gráficos como arquivos de imagem em Python usando o Matplotlib é simples com a função savefig(). Lembre-se de especificar o formato de arquivo desejado através da extensão do arquivo, remover espaços em branco indesejados com bbox_inches='tight', salvar seu gráfico antes de exibi-lo e fechar a figura, se necessário, para evitar que ela apareça no modo interativo. Seguindo esses passos, você pode salvar suas visualizações de forma eficiente para qualquer uso externo.

Cursos gratuitos para continuar aprendendo

Curso
Grátis · 2h 13min

Python para iniciantes: do zero ao primeiro projeto

Aprenda sobre variáveis, loops e funções e crie seu primeiro projeto Python em apenas 2 horas!

Curso
Grátis · 3h 47min

Python para dados: do zero à análise completa

Saia do zero e analise dados com Python e Pandas neste curso gratuito com certificado!

Curso
Grátis · 4h 11min

Python para IA: do zero ao primeiro chatbot

Aprenda a programar com Python e explore a inteligência artificial! Crie um chatbot prático que interage com seus próprios dados. Comece agora!

Ver todos os cursos

0 comentários

Exclusivo PRO
Faça parte da discussão

Comente e participe da conversa

Crie sua conta gratuita e compartilhe sua opinião nos comentários.

Entre para a Asimov