How to get matplotlib figure size
Question:
For a project, I need to know the current size (in pixels) of my matplotlib figure, but I can’t find how to do this.
Does anyone know how to do this ?
Answers:
import matplotlib.plt
fig = plt.figure()
size = fig.get_size_inches()*fig.dpi # size in pixels
To do it for the current figure,
fig = plt.gcf()
size = fig.get_size_inches()*fig.dpi # size in pixels
You can get the same info by doing:
bbox = fig.get_window_extent().transformed(fig.dpi_scale_trans.inverted())
width, height = bbox.width*fig.dpi, bbox.height*fig.dpi
Quickly extract figure size in inches
To get width and height in inches I just use:
fig_width, fig_height = plt.gcf().get_size_inches()
print(fig_width, fig_height)
I put this here because this question is the first result that pops up when you search ‘get matplotlib figure size’, and the api most naturally works in inches, not pixels.
For a project, I need to know the current size (in pixels) of my matplotlib figure, but I can’t find how to do this.
Does anyone know how to do this ?
import matplotlib.plt
fig = plt.figure()
size = fig.get_size_inches()*fig.dpi # size in pixels
To do it for the current figure,
fig = plt.gcf()
size = fig.get_size_inches()*fig.dpi # size in pixels
You can get the same info by doing:
bbox = fig.get_window_extent().transformed(fig.dpi_scale_trans.inverted())
width, height = bbox.width*fig.dpi, bbox.height*fig.dpi
Quickly extract figure size in inches
To get width and height in inches I just use:
fig_width, fig_height = plt.gcf().get_size_inches()
print(fig_width, fig_height)
I put this here because this question is the first result that pops up when you search ‘get matplotlib figure size’, and the api most naturally works in inches, not pixels.