.. _sphx_glr_gallery_misc_set_and_get.py: =========== Set And Get =========== The pyplot interface allows you to use setp and getp to set and get object properties, as well as to do introspection on the object set === To set the linestyle of a line to be dashed, you can do:: >>> line, = plt.plot([1,2,3]) >>> plt.setp(line, linestyle='--') If you want to know the valid types of arguments, you can provide the name of the property you want to set without a value:: >>> plt.setp(line, 'linestyle') linestyle: [ '-' | '--' | '-.' | ':' | 'steps' | 'None' ] If you want to see all the properties that can be set, and their possible values, you can do:: >>> plt.setp(line) set operates on a single instance or a list of instances. If you are in query mode introspecting the possible values, only the first instance in the sequence is used. When actually setting values, all the instances will be set. e.g., suppose you have a list of two lines, the following will make both lines thicker and red:: >>> x = np.arange(0,1.0,0.01) >>> y1 = np.sin(2*np.pi*x) >>> y2 = np.sin(4*np.pi*x) >>> lines = plt.plot(x, y1, x, y2) >>> plt.setp(lines, linewidth=2, color='r') get === get returns the value of a given attribute. You can use get to query the value of a single attribute:: >>> plt.getp(line, 'linewidth') 0.5 or all the attribute/value pairs:: >>> plt.getp(line) aa = True alpha = 1.0 antialiased = True c = b clip_on = True color = b ... long listing skipped ... Aliases ======= To reduce keystrokes in interactive mode, a number of properties have short aliases, e.g., 'lw' for 'linewidth' and 'mec' for 'markeredgecolor'. When calling set or get in introspection mode, these properties will be listed as 'fullname or aliasname'. .. image:: /gallery/misc/images/sphx_glr_set_and_get_001.png :align: center .. rst-class:: sphx-glr-script-out Out:: Line setters agg_filter: unknown alpha: float (0.0 transparent through 1.0 opaque) animated: [True | False] antialiased or aa: [True | False] clip_box: a :class:`matplotlib.transforms.Bbox` instance clip_on: [True | False] clip_path: [ (:class:`~matplotlib.path.Path`, :class:`~matplotlib.transforms.Transform`) | :class:`~matplotlib.patches.Patch` | None ] color or c: any matplotlib color contains: a callable function dash_capstyle: ['butt' | 'round' | 'projecting'] dash_joinstyle: ['miter' | 'round' | 'bevel'] dashes: sequence of on/off ink in points drawstyle: ['default' | 'steps' | 'steps-pre' | 'steps-mid' | 'steps-post'] figure: a :class:`matplotlib.figure.Figure` instance fillstyle: ['full' | 'left' | 'right' | 'bottom' | 'top' | 'none'] gid: an id string label: string or anything printable with '%s' conversion. linestyle or ls: ['solid' | 'dashed', 'dashdot', 'dotted' | (offset, on-off-dash-seq) | ``'-'`` | ``'--'`` | ``'-.'`` | ``':'`` | ``'None'`` | ``' '`` | ``''``] linewidth or lw: float value in points marker: :mod:`A valid marker style ` markeredgecolor or mec: any matplotlib color markeredgewidth or mew: float value in points markerfacecolor or mfc: any matplotlib color markerfacecoloralt or mfcalt: any matplotlib color markersize or ms: float markevery: [None | int | length-2 tuple of int | slice | list/array of int | float | length-2 tuple of float] path_effects: unknown picker: float distance in points or callable pick function ``fn(artist, event)`` pickradius: float distance in points rasterized: [True | False | None] sketch_params: unknown snap: unknown solid_capstyle: ['butt' | 'round' | 'projecting'] solid_joinstyle: ['miter' | 'round' | 'bevel'] transform: a :class:`matplotlib.transforms.Transform` instance url: a url string visible: [True | False] xdata: 1D array ydata: 1D array zorder: any number Line getters agg_filter = None alpha = None animated = False antialiased or aa = True children = [] clip_box = TransformedBbox(Bbox([[0.0, 0.0], [1.0, 1.0]]), Co... clip_on = True clip_path = None color or c = r contains = None dash_capstyle = butt dash_joinstyle = round data = (array([ 0. , 0.01, 0.02, 0.03, 0.04, 0.05, ... drawstyle = default figure = Figure(640x480) fillstyle = full gid = None label = _line0 linestyle or ls = -- linewidth or lw = 2.0 marker = None markeredgecolor or mec = r markeredgewidth or mew = 1.0 markerfacecolor or mfc = r markerfacecoloralt or mfcalt = none markersize or ms = 6.0 markevery = None path = Path(array([[ 0.00000000e+00, 0.00000000e+00], ... path_effects = [] picker = None pickradius = 5 rasterized = None sketch_params = None snap = None solid_capstyle = projecting solid_joinstyle = round transform = CompositeGenericTransform(TransformWrapper(Blended... transformed_clip_path_and_affine = (None, None) url = None visible = True xdata = [ 0. 0.01 0.02 0.03 0.04 0.05]... xydata = [[ 0. 0. ] [ 0.01 0.062790... ydata = [ 0. 0.06279052 0.12533323 0.18738131 ... zorder = 2 Rectangle setters agg_filter: unknown alpha: float or None animated: [True | False] antialiased or aa: [True | False] or None for default capstyle: ['butt' | 'round' | 'projecting'] clip_box: a :class:`matplotlib.transforms.Bbox` instance clip_on: [True | False] clip_path: [ (:class:`~matplotlib.path.Path`, :class:`~matplotlib.transforms.Transform`) | :class:`~matplotlib.patches.Patch` | None ] color: matplotlib color spec contains: a callable function edgecolor or ec: mpl color spec, None, 'none', or 'auto' facecolor or fc: mpl color spec, or None for default, or 'none' for no color figure: a :class:`matplotlib.figure.Figure` instance fill: [True | False] gid: an id string hatch: ['/' | '\\' | '|' | '-' | '+' | 'x' | 'o' | 'O' | '.' | '*'] height: float joinstyle: ['miter' | 'round' | 'bevel'] label: string or anything printable with '%s' conversion. linestyle or ls: ['solid' | 'dashed', 'dashdot', 'dotted' | (offset, on-off-dash-seq) | ``'-'`` | ``'--'`` | ``'-.'`` | ``':'`` | ``'None'`` | ``' '`` | ``''``] linewidth or lw: float or None for default path_effects: unknown picker: [None|float|boolean|callable] rasterized: [True | False | None] sketch_params: unknown snap: unknown transform: :class:`~matplotlib.transforms.Transform` instance url: a url string visible: [True | False] width: float x: float xy: 2-item sequence y: float zorder: any number Rectangle getters aa = True agg_filter = None alpha = None animated = False antialiased or aa = True bbox = Bbox(x0=0.0, y0=0.0, x1=1.0, y1=1.0) capstyle = butt children = [] clip_box = None clip_on = True clip_path = None contains = None data_transform = BboxTransformTo(TransformedBbox(Bbox([[0.125, 0.10... ec = (0.0, 0.0, 0.0, 0.0) edgecolor or ec = (0.0, 0.0, 0.0, 0.0) extents = Bbox(x0=80.0, y0=52.8, x1=576.0, y1=422.4) facecolor or fc = (1.0, 1.0, 1.0, 1) fc = (1.0, 1.0, 1.0, 1) figure = Figure(640x480) fill = True gid = None hatch = None height = 1.0 joinstyle = miter label = linestyle or ls = solid linewidth or lw = 0.0 ls = solid lw = 0.0 patch_transform = CompositeGenericTransform(BboxTransformTo(Bbox([[0... path = Path(array([[ 0., 0.], [ 1., 0.], ... path_effects = [] picker = None rasterized = None sketch_params = None snap = None transform = CompositeGenericTransform(CompositeGenericTransfor... transformed_clip_path_and_affine = (None, None) url = None verts = [[ 80. 52.8] [ 576. 52.8] [ 576. 422.4]... visible = True width = 1.0 window_extent = Bbox(x0=80.0, y0=52.8, x1=576.0, y1=422.4) x = 0.0 xy = (0.0, 0.0) y = 0.0 zorder = 1 Text setters agg_filter: unknown alpha: float (0.0 transparent through 1.0 opaque) animated: [True | False] backgroundcolor: any matplotlib color bbox: FancyBboxPatch prop dict clip_box: a :class:`matplotlib.transforms.Bbox` instance clip_on: [True | False] clip_path: [ (:class:`~matplotlib.path.Path`, :class:`~matplotlib.transforms.Transform`) | :class:`~matplotlib.patches.Patch` | None ] color: any matplotlib color contains: a callable function family or fontfamily or fontname or name: [FONTNAME | 'serif' | 'sans-serif' | 'cursive' | 'fantasy' | 'monospace' ] figure: a :class:`matplotlib.figure.Figure` instance fontproperties or font_properties: a :class:`matplotlib.font_manager.FontProperties` instance gid: an id string horizontalalignment or ha: [ 'center' | 'right' | 'left' ] label: string or anything printable with '%s' conversion. linespacing: float (multiple of font size) multialignment: ['left' | 'right' | 'center' ] path_effects: unknown picker: [None|float|boolean|callable] position: (x,y) rasterized: [True | False | None] rotation: [ angle in degrees | 'vertical' | 'horizontal' ] rotation_mode: unknown size or fontsize: [size in points | 'xx-small' | 'x-small' | 'small' | 'medium' | 'large' | 'x-large' | 'xx-large' ] sketch_params: unknown snap: unknown stretch or fontstretch: [a numeric value in range 0-1000 | 'ultra-condensed' | 'extra-condensed' | 'condensed' | 'semi-condensed' | 'normal' | 'semi-expanded' | 'expanded' | 'extra-expanded' | 'ultra-expanded' ] style or fontstyle: [ 'normal' | 'italic' | 'oblique'] text: string or anything printable with '%s' conversion. transform: :class:`~matplotlib.transforms.Transform` instance url: a url string usetex: unknown variant or fontvariant: [ 'normal' | 'small-caps' ] verticalalignment or ma or va: [ 'center' | 'top' | 'bottom' | 'baseline' ] visible: [True | False] weight or fontweight: [a numeric value in range 0-1000 | 'ultralight' | 'light' | 'normal' | 'regular' | 'book' | 'medium' | 'roman' | 'semibold' | 'demibold' | 'demi' | 'bold' | 'heavy' | 'extra bold' | 'black' ] wrap: unknown x: float y: float zorder: any number Text getters agg_filter = None alpha = None animated = False bbox_patch = None children = [] clip_box = None clip_on = True clip_path = None color = k contains = None family or fontfamily or fontname or name = ['sans-serif'] figure = Figure(640x480) fontproperties or font_properties = :family=sans-serif:style=normal:variant=normal:wei... gid = None horizontalalignment or ha = center label = name or fontname = DejaVu Sans path_effects = [] picker = None position = (0.5, 1.0) rasterized = None rotation = 0.0 rotation_mode = None size or fontsize = 12.0 sketch_params = None snap = None stretch or fontstretch = normal style or fontstyle = normal text = Hi mom transform = CompositeGenericTransform(BboxTransformTo(Transfor... transformed_clip_path_and_affine = (None, None) unitless_position = (0.5, 1.0) url = None usetex = False variant or fontvariant = normal verticalalignment or ma or va = baseline visible = True weight or fontweight = normal wrap = False zorder = 3 | .. code-block:: python from __future__ import print_function import matplotlib.pyplot as plt import numpy as np x = np.arange(0, 1.0, 0.01) y1 = np.sin(2*np.pi*x) y2 = np.sin(4*np.pi*x) lines = plt.plot(x, y1, x, y2) l1, l2 = lines plt.setp(lines, linestyle='--') # set both to dashed plt.setp(l1, linewidth=2, color='r') # line1 is thick and red plt.setp(l2, linewidth=1, color='g') # line2 is thinner and green print('Line setters') plt.setp(l1) print('Line getters') plt.getp(l1) print('Rectangle setters') plt.setp(plt.gca().patch) print('Rectangle getters') plt.getp(plt.gca().patch) t = plt.title('Hi mom') print('Text setters') plt.setp(t) print('Text getters') plt.getp(t) plt.show() **Total running time of the script:** ( 0 minutes 0.031 seconds) .. only :: html .. container:: sphx-glr-footer .. container:: sphx-glr-download :download:`Download Python source code: set_and_get.py ` .. container:: sphx-glr-download :download:`Download Jupyter notebook: set_and_get.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_