Attraverso questo tutorial, imparerai come usare la trama.io.funzione to_image () per salvare una figura come immagine.
Plotly.io.immaginare()
La trama.io.La funzione to_image () consente di convertire una figura plotly specifica in un'immagine statica.
La sintassi della funzione è come mostrata:
Plotly.io.to_image (fig, format = nessuna, larghezza = nessuna, altezza = nessuna, scala = nessuna, valida = true, motore = 'auto')
La funzione accetta i parametri come mostrato:
La funzione restituisce i dati dell'immagine in byte.
Esempio 1
Il seguente codice di esempio mostra come esportare una figura semplice in un'immagine statica usando TO_Image.
importazione della trama.esprimere come px
Importa Numpy come NP
x = np.casuale.Randn (50)
y = np.casuale.Randn (50)
FIG = px.SPIRESS (x = x, y = y)
Fico.spettacolo()
Nel codice sopra, utilizziamo il modulo Plob Express per creare un semplice diagramma a dispersione con dati casuali dalla funzione Numpy Randn.
La figura risultante:
Per esportare questa cifra, possiamo eseguire il codice come:
importazione trama come PLT
Plt.io.to_image (fig, format = 'png')
Il codice sopra dovrebbe restituire i dati byte dell'immagine come mostrato:
b '\ x89png \ r \ n \ x1a \ n \ x00 \ x00 \ x00 \ rihdr \ x00 \ x00 \ x02 \ xbc \ x00 \ x00 \ x01 \ xf4 \ x08 \ x06 \ x00 \ x00 \ x00
\ xdfy \ xfe \ xdf \ x00 \ x00
----troncato
Si noti che a volte è possibile affrontare l'errore richiesto Kaleido quando si esegue la funzione To_Image ().
Puoi risolverlo utilizzando il pacchetto Kaleido con PIP come:
$ PIP Installa Kaleido
$ PIP3 Installa kaledio
Una volta installato, rilanciare l'ambiente di sviluppo e rinnovare il codice sopra.
Esempio 2 - Salvataggio di byte su file
Nella maggior parte dei casi, avere byte di dati non è molto utile. Tuttavia, possiamo usare questo byte e scriverlo su un file di immagine come mostrato nel codice:
importazione trama come PLT
con open ("target_filename.png ", 'wb') come f:
F.Scrivi (PLT.io.to_image (fig, format = 'png'))
Nell'esempio sopra, utilizziamo l'operazione del file Python per creare un file e scrivere i byte dalla funzione to_image (). Il metodo sopra dovrebbe creare un file con il nome file specificato e salvare l'immagine.
L'immagine risultante è come mostrata:
Esempio 3 - Specifica delle dimensioni dell'immagine e dell'altezza
Per esportare l'immagine con dimensioni specifiche di larghezza e altezza, possiamo specificare questi parametri come mostrato:
importazione trama come PLT
con open ("target_filename.png ", 'wb') come f:
F.Scrivi (PLT.io.to_image (fig, larghezza = 1200, altezza = 800, format = 'png'))
Nell'esempio sopra, salviamo l'immagine in dimensioni 1200 × 800. Possiamo verificarlo eseguendo il comando:
$ exiftool target_filename.png
Questo dovrebbe restituire l'output come mostrato:
Come possiamo vedere, l'immagine risultante ha 1200 x 800 dimensioni.
Esempio 4 - Specificare il motore di esportazione di immagini
Plotly ti consente anche di specificare il motore che si desidera utilizzare durante l'esportazione dell'immagine. Supporta Kaleido e Orca come motori.
Un esempio di come specificare il motore di esportazione è mostrato di seguito.
Prima di specificare un motore, assicurarsi che sia installato e disponibile nel percorso del sistema.
Ad esempio, per installare Kaleido, eseguire il comando:
$ sudo pip3 installa kaleido
Per Orca, eseguire il comando:
CONDA INSTALLE -C CLASTLY -ORCA PSUTIL RICHIESTE
$ PIP3 Installa richieste PLACH-Orca Psutil
Esempio:
importazione trama come PLT
con open ("target_filename.png ", 'wb') come f:
F.Scrivi (PLT.io.to_image (fig, larghezza = 1200, altezza = 800, format = 'png', motore = "kaleido"))
L'esempio sopra illustra come specificare il motore di esportazione di immagini in Kaleido.
Tieni presente che la trama predefinita al valore automatico. Ciò significa che se il kaleido non è installato, la trama utilizzerà Orca e viceversa.
Conclusione
In questo articolo, abbiamo imparato come possiamo esportare una figura in un'immagine statica come byte usando IO.funzione to_image (). Abbiamo anche imparato come specificare una dimensione dell'immagine personalizzata, scrivere i byte al disco come immagine, ecc.