Open In App

Matplotlib.artist.Artist.set_path_effects() in Python

Last Updated : 10 May, 2020
Comments
Improve
Suggest changes
Like Article
Like
Report
Matplotlib is a library in Python and it is numerical – mathematical extension for NumPy library. The Artist class contains Abstract base class for objects that render into a FigureCanvas. All visible elements in a figure are subclasses of Artist.

matplotlib.artist.Artist.set_path_effects() method

The set_path_effects() method in artist module of matplotlib library is used to set the path effects.
Syntax: Artist.set_path_effects(self, path_effects) Parameters: This method accepts the following parameters.
  • path_effects : This parameter is the AbstractPathEffect..
Returns: This method does not return any value.
Below examples illustrate the matplotlib.artist.Artist.set_path_effects() function in matplotlib: Example 1: Python3 1==
# Implementation of matplotlib function
from matplotlib.artist import Artist  
import matplotlib.pyplot as plt 
import numpy as np 
import matplotlib.patheffects as path_effects 
  
  
fig, ax = plt.subplots() 
t = ax.text(0.02, 0.5, 
            'GeeksForGeeks', 
            fontsize = 40,  
            weight = 1000,  
            va ='center') 
  
Artist.set_path_effects(t, [path_effects.PathPatchEffect(offset =(4, -4), 
                                                 hatch ='xxxx', 
                                                 facecolor ='lightgreen'), 
                    path_effects.PathPatchEffect(edgecolor ='white',  
                                                 linewidth = 1.1, 
                                                 facecolor ='green')])

fig.suptitle('matplotlib.artist.Artist.set_path_effects()\
function Example', fontweight ="bold") 

plt.show()
Output: Example 2: Python3 1==
# Implementation of matplotlib function
from matplotlib.artist import Artist  
import matplotlib.pyplot as plt 
import matplotlib.patheffects as PathEffects 
import numpy as np 
  
  
fig, ax1 = plt.subplots() 
ax1.imshow([[1, 2], [2, 3]]) 
  
txt = ax1.annotate("Fourth Qaud", 
                   (1., 1.), 
                   (0., 0), 
                   arrowprops = dict(arrowstyle ="->", 
                                     connectionstyle ="angle3", 
                                     lw = 2), 
                   size = 20, ha ="center", 
                   path_effects =[PathEffects.withStroke(linewidth = 3, 
                                                         foreground ="w")]) 
  
Artist.set_path_effects(txt.arrow_patch, [ 
    PathEffects.Stroke(linewidth = 5,  
                       foreground ="w"), 
    PathEffects.Normal()]) 
  
ax1.grid(True, linestyle ="-") 
  
pe = [PathEffects.withStroke(linewidth = 3, 
                             foreground ="w")] 
  
for l in ax1.get_xgridlines() + ax1.get_ygridlines(): 
    Artist.set_path_effects(l, pe)
    
fig.suptitle('matplotlib.artist.Artist.set_path_effects()\
function Example', fontweight ="bold") 

plt.show()
Output:

Practice Tags :

Similar Reads