Plotly.io.to_image

Plotly.io.to_image
Ao trabalhar com os gráficos da Plotly, você encontrará uma instância em que precisa exportar o enredo para um arquivo de imagem. Enquanto você pode mergulhar em ferramentas externas para exportar a imagem, a plotly tem funcionalidade integrada para realizar isso.

Através deste tutorial, você aprenderá a usar o plotly.io.To_Image () Função para salvar uma figura como uma imagem.

Plotly.io.to_image ()

O plotly.io.A função to_image () permite que você converta uma plotagem específica para uma imagem estática.

A sintaxe da função é como mostrado:

plotly.io.to_image (fig, formato = nenhum, largura = nenhum, altura = nenhum, escala = nenhum, validate = true, mecanismo = 'auto')


A função aceita os parâmetros como mostrado:

    1. Figo - representa a figura a ser convertida em uma imagem estática.
    2. formatar - Este parâmetro define o formato de imagem de destino. Os valores suportados incluem: "png", "jpg", "jpeg", "svg", "webp", "eps" e "pdf.”
    3. largura - Especifica as dimensões de largura da imagem exportada. Este valor é fornecido em pixels.
    4. altura - define a dimensão da altura da imagem em pixels.
    5. escala - representa o fator de escala ao exportar a figura específica.
    6. validado - Especifica se a imagem deve ser validada antes de converter para a imagem. Por padrão, este valor é definido como true.
    7. motor - usado para definir o mecanismo de exportação de imagem. Os motores suportados incluem: "Kaleido", "Orca" e "Auto.”

A função retorna os dados da imagem em bytes.

Exemplo 1

O código de exemplo a seguir mostra como exportar uma figura simples para uma imagem estática usando o to_image.

importar plotly.expresso como px
importar numpy como np
x = np.aleatório.Randn (50)
y = np.aleatório.Randn (50)
Fig = px.dispersão (x = x, y = y)
Figo.mostrar()


No código acima, usamos o módulo Plotly Express para criar um gráfico de dispersão simples com dados aleatórios da função Numpy Randn.

A figura resultante:


Para exportar este número, podemos executar o código como:

importar plotagem como pLT
plt.io.to_image (fig, formato = 'png')


O código acima deve retornar os dados de bytes da imagem, como mostrado:

B '\ X89png \ r \ n \ x1a \ n \ x00 \ x00 \ x00 \ rihdr \ x00 \ x00 \ x02 \ xbc \ x00 \ x00 \ x01 \ xf4 \ x08 \ x06 \ x00 \ x X01 \ xf4 \ x08 \ x06 \ x00 \ x X00
\ xdfy \ xfe \ xdf \ x00 \ x00
----truncado


Observe que às vezes você pode enfrentar o erro de Kaleido exigido ao executar a função to_image ().

Você pode resolver isso usando o pacote Kaleido com PIP como:

$ pip install kaleido
$ pip3 Instale Kaledio


Depois de instalado, relança seu ambiente de desenvolvimento e reencontre o código acima.

Exemplo 2 - Salvar bytes para arquivar

Na maioria dos casos, ter bytes de dados não é muito útil. No entanto, podemos usar esse byte e escrevê -lo em um arquivo de imagem, como mostrado no código:

importar plotagem como pLT
com open ("Target_filename.png ", 'wb') como f:
f.Escreva (PLT.io.to_image (fig, formato = 'png')))


No exemplo acima, usamos a operação do arquivo python para criar um arquivo e escrever os bytes da função to_image (). O método acima deve criar um arquivo com o nome do arquivo especificado e salvar a imagem.

A imagem resultante é como mostrado:

Exemplo 3 - Especificando dimensões de imagem e altura

Para exportar a imagem com dimensões específicas de largura e altura, podemos especificar esses parâmetros como mostrado:

importar plotagem como pLT
com open ("Target_filename.png ", 'wb') como f:
f.Escreva (PLT.io.to_image (fig, largura = 1200, altura = 800, formato = 'png')))


No exemplo acima, salvamos a imagem em dimensões 1200 × 800. Podemos verificar isso executando o comando:

$ exiftool Target_filename.png


Isso deve retornar a saída como mostrado:


Como podemos ver, a imagem resultante tem 1200 x 800 dimensões.

Exemplo 4 - Especifique o mecanismo de exportação de imagem

O plotly também permite especificar o mecanismo que você deseja usar ao exportar a imagem. Ele suporta Kaleido e Orca como os motores.

Um exemplo de como especificar o mecanismo de exportação é mostrado abaixo.

Antes de especificar um mecanismo, verifique se ele está instalado e disponível no caminho do seu sistema.

Por exemplo, para instalar o Kaleido, execute o comando:

$ sudo pip3 install kaleido


Para Orca, execute o comando:

solicitações de plotly -orca plotly -orca
$ PIP3 Instale solicitações de plotly-orca psutil


Exemplo:

importar plotagem como pLT
com open ("Target_filename.png ", 'wb') como f:
f.Escreva (PLT.io.to_image (fig, largura = 1200, altura = 800, formato = 'png', mecanismo = "kaleido")))


O exemplo acima ilustra como especificar o mecanismo de exportação de imagem para Kaleido.

Lembre -se de que a plotagem padrão no valor automático. Isso significa que, se o Kaleido não estiver instalado, o plotly usará o ORCA e o vice -versa.

Conclusão

Neste artigo, aprendemos como podemos exportar uma figura para uma imagem estática como bytes usando o IO.função to_image (). Também aprendemos a especificar um tamanho de imagem personalizado, escreva os bytes para disco como uma imagem, etc.