Salva figure identiche a quelle visualizzate in Matplotlib

Salva figure identiche a quelle visualizzate in Matplotlib

Salvando la figura usando matplotlib.pyplot.savefig(), abbiamo un parametro chiamato dpi, che specifica la dimensione relativa del testo e la larghezza del tratto sulle linee. Per impostazione predefinita, il valore di dpi per matplotlib.pyplot.show() è 80, mentre il valore predefinito di dpi per matplotlib.pyplot.savefig() è 100.
Per assicurarci che le cifre siano identiche per i metodi show() e savefig(), dobbiamo usare dpi=fig.dpi nel metodo savefig(). Possiamo anche impostare il parametro figsize nel metodo matplotlib.pyplot.figure() per regolare le dimensioni assolute del grafico in modo che entrambe le figure siano identiche.

Imposta dpi=fig.dpi nel metodo savefig() per salvare le figure identiche alle figure visualizzate in Matplotlib

import matplotlib.pyplot as plt  x = [1, 3, 4, 5, 8] y = [3, 1, 5, 4, 9]  fig = plt.figure() plt.plot(x, y) plt.xlabel("X") plt.ylabel("Y") plt.title("X vs Y") fig.savefig("plot.png", dpi=fig.dpi) plt.show() 

Produzione:

Figure visualizzate salva le figure identiche alle figure visualizzate Matplotlib

Figura salvata:

Figura salvata salva le figure identiche alle figure visualizzate Matplotlib

Questo processo salva la figura come plot.png, che è identico a quello visualizzato.

A volte, possiamo ottenere grandi bordi sulle figure create. Per risolvere questo valore, possiamo utilizzare il metodo matplotlib.pyplot.tight_layout() o impostare bbox_inches='tight' nel metodo savefig().

import matplotlib.pyplot as plt  x = [1, 3, 4, 5, 8] y = [3, 1, 5, 4, 9]  fig = plt.figure() plt.plot(x, y) plt.xlabel("X") plt.ylabel("Y") plt.title("X vs Y") fig.savefig("plot.png", dpi=fig.dpi, bbox_inches="tight") plt.show() 

Produzione:

Figure visualizzate salva le figure identiche alle figure visualizzate Matplotlib

Figura salvata:

Figura salvata salva le figure identiche alle figure visualizzate Matplotlib

Ti piacciono i nostri tutorial? Iscriviti a DelftStack su YouTube per aiutarci a creare altre guide video di alta qualità. Iscriviti
Autore: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Articolo correlato - Matplotlib Images