Note
Go to the endto download the full example code.
Simple Anchored Artists#
This example illustrates the use of the anchored helper classes found inmatplotlib.offsetbox and inmpl_toolkits.axes_grid1.An implementation of a similar figure, but without use of the toolkit,can be found inAnchored Artists.

importmatplotlib.pyplotaspltdefdraw_text(ax):""" Draw two text-boxes, anchored by different corners to the upper-left corner of the figure. """frommatplotlib.offsetboximportAnchoredTextat=AnchoredText("Figure 1a",loc='upper left',prop=dict(size=8),frameon=True,)at.patch.set_boxstyle("round,pad=0.,rounding_size=0.2")ax.add_artist(at)at2=AnchoredText("Figure 1(b)",loc='lower left',prop=dict(size=8),frameon=True,bbox_to_anchor=(0.,1.),bbox_transform=ax.transAxes)at2.patch.set_boxstyle("round,pad=0.,rounding_size=0.2")ax.add_artist(at2)defdraw_circle(ax):""" Draw a circle in axis coordinates """frommatplotlib.patchesimportCirclefrommpl_toolkits.axes_grid1.anchored_artistsimportAnchoredDrawingAreaada=AnchoredDrawingArea(20,20,0,0,loc='upper right',pad=0.,frameon=False)p=Circle((10,10),10)ada.da.add_artist(p)ax.add_artist(ada)defdraw_sizebar(ax):""" Draw a horizontal bar with length of 0.1 in data coordinates, with a fixed label underneath. """frommpl_toolkits.axes_grid1.anchored_artistsimportAnchoredSizeBarasb=AnchoredSizeBar(ax.transData,0.1,r"1$^{\prime}$",loc='lower center',pad=0.1,borderpad=0.5,sep=5,frameon=False)ax.add_artist(asb)fig,ax=plt.subplots()ax.set_aspect(1.)draw_text(ax)draw_circle(ax)draw_sizebar(ax)plt.show()