Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit d443db1

Browse files
ENH: Added __repr__ for Figure
1 parent b4b4794 commit d443db1

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

lib/matplotlib/figure.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,6 +273,13 @@ class Figure(Artist):
273273
def __str__(self):
274274
return "Figure(%gx%g)" % tuple(self.bbox.size)
275275

276+
def __repr__(self):
277+
return "<{clsname} size {h:g}x{w:g} with {naxes} axes>".format(
278+
clsname=self.__class__.__name__,
279+
h=self.bbox.size[0], w=self.bbox.size[1],
280+
naxes=len(self.axes),
281+
)
282+
276283
def __init__(self,
277284
figsize=None, # defaults to rc figure.figsize
278285
dpi=None, # defaults to rc figure.dpi

lib/matplotlib/tests/test_figure.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -326,3 +326,8 @@ def test_savefig():
326326
msg = "savefig() takes 2 positional arguments but 3 were given"
327327
with pytest.raises(TypeError, message=msg):
328328
fig.savefig("fname1.png", "fname2.png")
329+
330+
331+
def test_figure_repr():
332+
fig = plt.figure(figsize=(10, 20), dpi=10)
333+
assert repr(fig) == "<Figure size 100x200 with 0 axes>"

0 commit comments

Comments
 (0)