When I use show()
to plot the graphs in X
, the graphs looks very good. However when I start to use savefig()
to generate large amount of graphs, the savefig()
generated graphs
' font, lines, polygons all look smaller than the show()
generated graph. My environment is Ubuntu and the backend for show()
is Qt4Agg
. How can I make the show()
plot and the savefig()
plot looks consistent?
savefig
specifies the DPI for the saved figure (The default is 100 if it's not specified in your .matplotlibrc, have a look at the dpi
kwarg to savefig
). It doesn't inheret it from the DPI of the original figure.
The DPI affects the relative size of the text and width of the stroke on lines, etc. If you want things to look identical, then pass fig.dpi
to fig.savefig
.
E.g.
import matplotlib.pyplot as plt
fig = plt.figure()
plt.plot(range(10))
fig.savefig('temp.png', dpi=fig.dpi)