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:
# 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:
# 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: