Open In App

Matplotlib.axes.Axes.get_figure() in Python

Last Updated : 30 Apr, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

Matplotlib is a library in Python and it is numerical – mathematical extension for NumPy library. The Axes Class contains most of the figure elements: Axis, Tick, Line2D, Text, Polygon, etc., and sets the coordinate system. And the instances of Axes supports callbacks through a callbacks attribute.

matplotlib.axes.Axes.get_figure() Function

The Axes.get_figure() function in axes module of matplotlib library is used to get the Figure instance the artist belongs to.

Syntax: Axes.get_figure(self)

Parameters: This method does not accepts any parameter.

Returns: This method return the Figure instance the artist belongs to.

Below examples illustrate the matplotlib.axes.Axes.get_figure() function in matplotlib.axes:

Example 1:




# Implementation of matplotlib function
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.lines as lines
import matplotlib.transforms as mtransforms
import matplotlib.text as mtext
   
   
class GFGfun(lines.Line2D):
  
    def __init__(self, *args, **kwargs):
        self.text = mtext.Text(0, 0, '')
        lines.Line2D.__init__(self, *args, **kwargs)
        self.text.set_text(self.get_label())
   
    def set_figure(self, figure):
        self.text.set_figure(figure)
        lines.Line2D.set_figure(self, figure)
   
    def set_axes(self, axes):
        self.text.set_axes(axes)
        lines.Line2D.set_axes(self, axes)
   
    def set_transform(self, transform):
        # 2 pixel offset
        texttrans = transform + mtransforms.Affine2D().translate(2, 2)
        self.text.set_transform(texttrans)
        lines.Line2D.set_transform(self, transform)
   
    def set_data(self, x, y):
        if len(x):
            self.text.set_position((x[-1], y[-1]))
   
        lines.Line2D.set_data(self, x, y)
   
    def draw(self, renderer):
        lines.Line2D.draw(self, renderer)
        self.text.draw(renderer)
   
   
np.random.seed(10**7)
   
fig, ax = plt.subplots()
x, y = np.random.rand(2, 20)
line = GFGfun(x, y, mfc ='green',
              ms = 12,
              label ='Label')
   
line.text.set_color('green')
line.text.set_fontsize(16)
   
ax.add_line(line)
   
ax.text(0.2, 0.8, "Value Return : "
        +str(ax.get_figure()), 
        fontweight ="bold")
  
fig.suptitle('matplotlib.axes.Axes.get_figure()\
 function Example\n\n', fontweight ="bold")
  
plt.show()


Output:

Example 2:




# Implementation of matplotlib function
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.lines as lines
import matplotlib.transforms as mtransforms
import matplotlib.text as mtext
   
  
class GFGfun(lines.Line2D):
  
    def __init__(self, *args, **kwargs):
        self.text = mtext.Text(0, 0, '')
        lines.Line2D.__init__(self, *args, **kwargs)
        self.text.set_text(self.get_label())
   
    def set_figure(self, figure):
        self.text.set_figure(figure)
        lines.Line2D.set_figure(self, figure)
   
   
np.random.seed(10**7)
   
   
fig, ax = plt.subplots()
x, y = np.random.rand(2, 10)
line = GFGfun(x, y,
              mfc ='green', ms = 12, label ='Label')
   
line.text.set_color('green')
line.text.set_fontsize(16)
   
ax.add_line(line)
  
ax.text(0.2, 0.8, "Value Return : "
        +str(ax.get_figure()),
        fontweight ="bold")
   
fig.suptitle('matplotlib.axes.Axes.get_figure()\
function Example\n\n', fontweight ="bold")
  
plt.show()


Output:



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads