Traccia e salva un grafico in alta risoluzione in Matplotlib
Per salvare un grafico in alta risoluzione in Matplotlib, controlliamo vari parametri della funzione savefig()
. Allo stesso modo, possiamo tracciare grafici in alta risoluzione impostando un valore alto del parametro dpi
nella funzione figure()
.
Traccia grafico in alta risoluzione in Matplotlib
Possiamo tracciare figure ad alta risoluzione impostando valori alti di dpi
nella funzione matplotlib.pyplot.figure()
.
Sintassi di matplotlib.pyplot.figure()
:
matplotlib.pyplot.figure(num=None,
figsize=None,
dpi=None,
facecolor=None,
edgecolor=None,
frameon=True,
FigureClass=<class 'matplotlib.figure.Figure'>,
**kwargs)
dpi
sta per punti per pollice. Rappresenta il numero di pixel per pollice nella figura. Il valore predefinito per dpi
nella funzione matplotlib.pyplot.figure()
è 100. Possiamo impostare valori più alti di dpi
per generare grafici ad alta risoluzione. Tuttavia, l’aumento di dpi
ingrandirà anche la figura e dobbiamo regolare il valore appropriato di dpi
in modo che la figura non venga ritagliata.
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(0, 20)
m = 1.5
c = 2
y = m * x + c
plt.figure(dpi=150)
plt.plot(x, y)
plt.title("y=mx+c")
plt.xlabel("x-axis")
plt.ylabel("y-axis")
plt.show()
Produzione:
Salva la figura in alta risoluzione in Matplotlib
Possiamo tracciare figure ad alta risoluzione impostando valori alti di dpi
nella funzione matplotlib.pyplot.savefig()
.
Sintassi di matplotlib.pyplot.savefig()
:
matplotlib.pyplot.savefig(fname,
dpi=None,
facecolor='w',
edgecolor='w',
orientation='portrait',
papertype=None,
format=None,
transparent=False,
bbox_inches=None,
pad_inches=0.1,
frameon=None,
metadata=None)
Possiamo controllare la risoluzione della figura salvata tramite il parametro dpi
nella funzione savefig()
. Allo stesso modo, possiamo anche variare i formati salvando la trama. Generalmente, pngs
è migliore di jpeg
per i grafici ad alta risoluzione poiché png
è un formato di compressione senza perdita e l’altro è un formato di compressione con perdita.
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(0, 5)
m = 1.5
c = 2
y = m * x + c
plt.plot(x, y)
plt.title("y=mx+c")
plt.xlabel("x-axis")
plt.ylabel("y-axis")
plt.savefig("High resoltion.png", dpi=300)
Questo salva il grafico come High resoltion.png
nella directory di lavoro corrente con una risoluzione maggiore rispetto al caso predefinito.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn