Open In App

Matplotlib.figure.Figure.gca() in Python

Improve
Improve
Like Article
Like
Save
Share
Report

Matplotlib is a library in Python and it is numerical – mathematical extension for NumPy library. The figure module provides the top-level Artist, the Figure, which contains all the plot elements. This module is used to control the default spacing of the subplots and top level container for all plot elements.

matplotlib.figure.Figure.gca() method

The gca() method figure module of matplotlib library is used to get the current axes.

Syntax: gca(self, **kwargs)

Parameters: This method does not accept any parameters.

Returns: This method returns the current axes.

Below examples illustrate the matplotlib.figure.Figure.gca() function in matplotlib.figure:

Example 1:




# Implementation of matplotlib function
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.gridspec as gridspec
from mpl_toolkits.axes_grid1 import make_axes_locatable
   
  
plt.close('all')
arr = np.arange(100).reshape((10, 10))
fig = plt.figure(figsize =(4, 4))
  
im = plt.imshow(arr,
                interpolation ="none",
                cmap ="plasma")
   
divider = make_axes_locatable(fig.gca())
cax = divider.append_axes("left",
                          "15 %"
                           pad ="30 %")
  
plt.colorbar(im, cax = cax)
   
fig.suptitle('matplotlib.figure.Figure.gca()\
 function Example', fontweight ="bold"
  
plt.show()


Output:

Example 2:




#Implementation of matplotlib function
import matplotlib.pyplot as plt
from matplotlib.tri import Triangulation
from matplotlib.patches import Polygon
import numpy as np
   
      
ang = 3
radi = 8
radii = np.linspace(0.25, 0.95, radi)
  
res = np.linspace(0, 4 * np.pi, ang)
res = np.repeat(res[..., np.newaxis], radi, axis=1)
res[:, 1::2] += np.pi / ang
  
x = (radii*np.cos(2*res)).flatten()
y = (radii*np.sin(2*res)).flatten()
  
triang = Triangulation(x, y)
triang.set_mask(np.hypot(x[triang.triangles].mean(axis=1),
                         y[triang.triangles].mean(axis=1))
                < 0.25)
     
trifinder = triang.get_trifinder()
     
fig = plt.figure()
plt.triplot(triang, 'go-')
polygon = Polygon([[0, 0], [0, 0]], facecolor='r')
     
def update_polygon(tri):
  
    if tri == -1:
        points = [0, 0, 0]
      
    else:
        points = triang.triangles[tri]
      
    xs = triang.x[points]
    ys = triang.y[points]
    polygon.set_xy(np.column_stack([xs, ys]))
     
     
def motion_notify(event):
      
    if event.inaxes is None:
        tri = -1
      
    else:
        tri = trifinder(event.xdata, event.ydata)
      
    update_polygon(tri)
      
    fig.suptitle('matplotlib.figure.Figure.gca()\
    function Example\n\n Potion number : %i' % tri,
                 fontweight="bold")
      
    event.canvas.draw()
     
update_polygon(-1)
fig.gca().add_patch(polygon)
plt.gcf().canvas.mpl_connect('motion_notify_event',
                             motion_notify)
     
plt.show()


Output:



Last Updated : 30 Apr, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads