<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Text properties and layout — Matplotlib v1.1.1 documentation</title> <link rel="stylesheet" href="../_static/mpl.css" type="text/css" /> <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '../', VERSION: '1.1.1', COLLAPSE_INDEX: false, FILE_SUFFIX: '.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="../_static/jquery.js"></script> <script type="text/javascript" src="../_static/underscore.js"></script> <script type="text/javascript" src="../_static/doctools.js"></script> <link rel="search" type="application/opensearchdescription+xml" title="Search within Matplotlib v1.1.1 documentation" href="../_static/opensearch.xml"/> <link rel="top" title="Matplotlib v1.1.1 documentation" href="../index.html" /> <link rel="up" title="Working with text" href="index_text.html" /> <link rel="next" title="Writing mathematical expressions" href="mathtext.html" /> <link rel="prev" title="Text introduction" href="text_intro.html" /> </head> <body> <!-- Piwik --> <script type="text/javascript"> if ("matplotlib.sourceforge.net" == document.location.hostname || "matplotlib.sf.net" == document.location.hostname) { var pkBaseURL = (("https:" == document.location.protocol) ? "https://apps.sourceforge.net/piwik/matplotlib/" : "http://apps.sourceforge.net/piwik/matplotlib/"); document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E")); } </script> <script type="text/javascript"> if ("matplotlib.sourceforge.net" == document.location.hostname || "matplotlib.sf.net" == document.location.hostname) { piwik_action_name = ''; piwik_idsite = 1; piwik_url = pkBaseURL + "piwik.php"; piwik_log(piwik_action_name, piwik_idsite, piwik_url); document.write(unescape('%3Cobject%3E%3Cnoscript%3E%3Cp%3E%3Cimg src="http://apps.sourceforge.net/piwik/matplotlib/piwik.php?idsite=1" alt="piwik"/%3E%3C/p%3E%3C/noscript%3E%3C/object%3E')); } </script> <!-- End Piwik Tag --> <link rel="shortcut icon" href="_static/favicon.ico"> <div style="background-color: white; text-align: left; padding: 10px 10px 15px 15px"> <a href="../index.html"><img src="../_static/logo2.png" border="0" alt="matplotlib"/></a> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="../genindex.html" title="General Index" accesskey="I">index</a></li> <li class="right" > <a href="../py-modindex.html" title="Python Module Index" >modules</a> |</li> <li class="right" > <a href="mathtext.html" title="Writing mathematical expressions" accesskey="N">next</a> |</li> <li class="right" > <a href="text_intro.html" title="Text introduction" accesskey="P">previous</a> |</li> <li><a href="../index.html">home</a>| </li> <li><a href="../search.html">search</a>| </li> <li><a href="../examples/index.html">examples</a>| </li> <li><a href="../gallery.html">gallery</a>| </li> <li><a href="../contents.html">docs</a> »</li> <li><a href="index.html" >User’s Guide</a> »</li> <li><a href="index_text.html" accesskey="U">Working with text</a> »</li> </ul> </div> <div class="sphinxsidebar"> <div class="sphinxsidebarwrapper"> <h4>Previous topic</h4> <p class="topless"><a href="text_intro.html" title="previous chapter">Text introduction</a></p> <h4>Next topic</h4> <p class="topless"><a href="mathtext.html" title="next chapter">Writing mathematical expressions</a></p> <h3>This Page</h3> <ul class="this-page-menu"> <li><a href="../_sources/users/text_props.txt" rel="nofollow">Show Source</a></li> </ul> <div id="searchbox" style="display: none"> <h3>Quick search</h3> <form class="search" action="../search.html" method="get"> <input type="text" name="q" size="18" /> <input type="submit" value="Go" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> <p class="searchtip" style="font-size: 90%"> Enter search terms or a module, class or function name. </p> </div> <script type="text/javascript">$('#searchbox').show(0);</script> </div> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body"> <div class="section" id="text-properties-and-layout"> <span id="text-properties"></span><h1>Text properties and layout<a class="headerlink" href="#text-properties-and-layout" title="Permalink to this headline">ΒΆ</a></h1> <p>The <a class="reference internal" href="../api/artist_api.html#matplotlib.text.Text" title="matplotlib.text.Text"><tt class="xref py py-class docutils literal"><span class="pre">matplotlib.text.Text</span></tt></a> instances have a variety of properties which can be configured via keyword arguments to the text commands (eg <a class="reference internal" href="../api/pyplot_api.html#matplotlib.pyplot.title" title="matplotlib.pyplot.title"><tt class="xref py py-func docutils literal"><span class="pre">title()</span></tt></a>, <a class="reference internal" href="../api/pyplot_api.html#matplotlib.pyplot.xlabel" title="matplotlib.pyplot.xlabel"><tt class="xref py py-func docutils literal"><span class="pre">xlabel()</span></tt></a> and <a class="reference internal" href="../api/pyplot_api.html#matplotlib.pyplot.text" title="matplotlib.pyplot.text"><tt class="xref py py-func docutils literal"><span class="pre">text()</span></tt></a>).</p> <table border="1" class="docutils"> <colgroup> <col width="25%" /> <col width="75%" /> </colgroup> <thead valign="bottom"> <tr><th class="head">Property</th> <th class="head">Value Type</th> </tr> </thead> <tbody valign="top"> <tr><td>alpha</td> <td>float</td> </tr> <tr><td>backgroundcolor</td> <td>any matplotlib color</td> </tr> <tr><td>bbox</td> <td>rectangle prop dict plus key ‘pad’ which is a pad in points</td> </tr> <tr><td>clip_box</td> <td>a matplotlib.transform.Bbox instance</td> </tr> <tr><td>clip_on</td> <td>[True | False]</td> </tr> <tr><td>clip_path</td> <td>a Path instance and a Transform instance, a Patch</td> </tr> <tr><td>color</td> <td>any matplotlib color</td> </tr> <tr><td>family</td> <td>[ ‘serif’ | ‘sans-serif’ | ‘cursive’ | ‘fantasy’ | ‘monospace’ ]</td> </tr> <tr><td>fontproperties</td> <td>a matplotlib.font_manager.FontProperties instance</td> </tr> <tr><td>horizontalalignment or ha</td> <td>[ ‘center’ | ‘right’ | ‘left’ ]</td> </tr> <tr><td>label</td> <td>any string</td> </tr> <tr><td>linespacing</td> <td>float</td> </tr> <tr><td>multialignment</td> <td>[‘left’ | ‘right’ | ‘center’ ]</td> </tr> <tr><td>name or fontname</td> <td>string eg, [‘Sans’ | ‘Courier’ | ‘Helvetica’ ...]</td> </tr> <tr><td>picker</td> <td>[None|float|boolean|callable]</td> </tr> <tr><td>position</td> <td>(x,y)</td> </tr> <tr><td>rotation</td> <td>[ angle in degrees ‘vertical’ | ‘horizontal’</td> </tr> <tr><td>size or fontsize</td> <td>[ size in points | relative size eg ‘smaller’, ‘x-large’ ]</td> </tr> <tr><td>style or fontstyle</td> <td>[ ‘normal’ | ‘italic’ | ‘oblique’]</td> </tr> <tr><td>text</td> <td>string or anything printable with ‘%s’ conversion</td> </tr> <tr><td>transform</td> <td>a matplotlib.transform transformation instance</td> </tr> <tr><td>variant</td> <td>[ ‘normal’ | ‘small-caps’ ]</td> </tr> <tr><td>verticalalignment or va</td> <td>[ ‘center’ | ‘top’ | ‘bottom’ | ‘baseline’ ]</td> </tr> <tr><td>visible</td> <td>[True | False]</td> </tr> <tr><td>weight or fontweight</td> <td>[ ‘normal’ | ‘bold’ | ‘heavy’ | ‘light’ | ‘ultrabold’ | ‘ultralight’]</td> </tr> <tr><td>x</td> <td>float</td> </tr> <tr><td>y</td> <td>float</td> </tr> <tr><td>zorder</td> <td>any number</td> </tr> </tbody> </table> <p>You can layout text with the alignment arguments <tt class="docutils literal"><span class="pre">horizontalalignment</span></tt>, <tt class="docutils literal"><span class="pre">verticalalignment</span></tt>, and <tt class="docutils literal"><span class="pre">multialignment</span></tt>. <tt class="docutils literal"><span class="pre">horizontalalignment</span></tt> controls whether the x positional argument for the text indicates the left, center or right side of the text bounding box. <tt class="docutils literal"><span class="pre">verticalalignment</span></tt> controls whether the y positional argument for the text indicates the bottom, center or top side of the text bounding box. <tt class="docutils literal"><span class="pre">multialignment</span></tt>, for newline separated strings only, controls whether the different lines are left, center or right justified. Here is an example which uses the <a class="reference internal" href="../api/pyplot_api.html#matplotlib.pyplot.text" title="matplotlib.pyplot.text"><tt class="xref py py-func docutils literal"><span class="pre">text()</span></tt></a> command to show the various alignment possibilities. The use of <tt class="docutils literal"><span class="pre">transform=ax.transAxes</span></tt> throughout the code indicates that the coordinates are given relative to the axes bounding box, with 0,0 being the lower left of the axes and 1,1 the upper right.</p> <div class="highlight-python"><div class="highlight"><pre><span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="kn">as</span> <span class="nn">plt</span> <span class="kn">import</span> <span class="nn">matplotlib.patches</span> <span class="kn">as</span> <span class="nn">patches</span> <span class="c"># build a rectangle in axes coords</span> <span class="n">left</span><span class="p">,</span> <span class="n">width</span> <span class="o">=</span> <span class="o">.</span><span class="mi">25</span><span class="p">,</span> <span class="o">.</span><span class="mi">5</span> <span class="n">bottom</span><span class="p">,</span> <span class="n">height</span> <span class="o">=</span> <span class="o">.</span><span class="mi">25</span><span class="p">,</span> <span class="o">.</span><span class="mi">5</span> <span class="n">right</span> <span class="o">=</span> <span class="n">left</span> <span class="o">+</span> <span class="n">width</span> <span class="n">top</span> <span class="o">=</span> <span class="n">bottom</span> <span class="o">+</span> <span class="n">height</span> <span class="n">fig</span> <span class="o">=</span> <span class="n">plt</span><span class="o">.</span><span class="n">figure</span><span class="p">()</span> <span class="n">ax</span> <span class="o">=</span> <span class="n">fig</span><span class="o">.</span><span class="n">add_axes</span><span class="p">([</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">])</span> <span class="c"># axes coordinates are 0,0 is bottom left and 1,1 is upper right</span> <span class="n">p</span> <span class="o">=</span> <span class="n">patches</span><span class="o">.</span><span class="n">Rectangle</span><span class="p">(</span> <span class="p">(</span><span class="n">left</span><span class="p">,</span> <span class="n">bottom</span><span class="p">),</span> <span class="n">width</span><span class="p">,</span> <span class="n">height</span><span class="p">,</span> <span class="n">fill</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">,</span> <span class="n">clip_on</span><span class="o">=</span><span class="bp">False</span> <span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">add_patch</span><span class="p">(</span><span class="n">p</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="n">left</span><span class="p">,</span> <span class="n">bottom</span><span class="p">,</span> <span class="s">'left top'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'left'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'top'</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="n">left</span><span class="p">,</span> <span class="n">bottom</span><span class="p">,</span> <span class="s">'left bottom'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'left'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'bottom'</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="n">right</span><span class="p">,</span> <span class="n">top</span><span class="p">,</span> <span class="s">'right bottom'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'right'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'bottom'</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="n">right</span><span class="p">,</span> <span class="n">top</span><span class="p">,</span> <span class="s">'right top'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'right'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'top'</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="n">right</span><span class="p">,</span> <span class="n">bottom</span><span class="p">,</span> <span class="s">'center top'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'center'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'top'</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="n">left</span><span class="p">,</span> <span class="mf">0.5</span><span class="o">*</span><span class="p">(</span><span class="n">bottom</span><span class="o">+</span><span class="n">top</span><span class="p">),</span> <span class="s">'right center'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'right'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'center'</span><span class="p">,</span> <span class="n">rotation</span><span class="o">=</span><span class="s">'vertical'</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="n">left</span><span class="p">,</span> <span class="mf">0.5</span><span class="o">*</span><span class="p">(</span><span class="n">bottom</span><span class="o">+</span><span class="n">top</span><span class="p">),</span> <span class="s">'left center'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'left'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'center'</span><span class="p">,</span> <span class="n">rotation</span><span class="o">=</span><span class="s">'vertical'</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="mf">0.5</span><span class="o">*</span><span class="p">(</span><span class="n">left</span><span class="o">+</span><span class="n">right</span><span class="p">),</span> <span class="mf">0.5</span><span class="o">*</span><span class="p">(</span><span class="n">bottom</span><span class="o">+</span><span class="n">top</span><span class="p">),</span> <span class="s">'middle'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'center'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'center'</span><span class="p">,</span> <span class="n">fontsize</span><span class="o">=</span><span class="mi">20</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s">'red'</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="n">right</span><span class="p">,</span> <span class="mf">0.5</span><span class="o">*</span><span class="p">(</span><span class="n">bottom</span><span class="o">+</span><span class="n">top</span><span class="p">),</span> <span class="s">'centered'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'center'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'center'</span><span class="p">,</span> <span class="n">rotation</span><span class="o">=</span><span class="s">'vertical'</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">text</span><span class="p">(</span><span class="n">left</span><span class="p">,</span> <span class="n">top</span><span class="p">,</span> <span class="s">'rotated</span><span class="se">\n</span><span class="s">with newlines'</span><span class="p">,</span> <span class="n">horizontalalignment</span><span class="o">=</span><span class="s">'center'</span><span class="p">,</span> <span class="n">verticalalignment</span><span class="o">=</span><span class="s">'center'</span><span class="p">,</span> <span class="n">rotation</span><span class="o">=</span><span class="mi">45</span><span class="p">,</span> <span class="n">transform</span><span class="o">=</span><span class="n">ax</span><span class="o">.</span><span class="n">transAxes</span><span class="p">)</span> <span class="n">ax</span><span class="o">.</span><span class="n">set_axis_off</span><span class="p">()</span> <span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span> </pre></div> </div> <p>(<a class="reference external" href="../pyplots/text_layout.py">Source code</a>, <a class="reference external" href="../pyplots/text_layout.png">png</a>, <a class="reference external" href="../pyplots/text_layout.hires.png">hires.png</a>, <a class="reference external" href="../pyplots/text_layout.pdf">pdf</a>)</p> <div class="figure"> <img alt="../_images/text_layout.png" src="../_images/text_layout.png" /> </div> </div> </div> </div> </div> <div class="clearer"></div> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="../genindex.html" title="General Index" >index</a></li> <li class="right" > <a href="../py-modindex.html" title="Python Module Index" >modules</a> |</li> <li class="right" > <a href="mathtext.html" title="Writing mathematical expressions" >next</a> |</li> <li class="right" > <a href="text_intro.html" title="Text introduction" >previous</a> |</li> <li><a href="../index.html">home</a>| </li> <li><a href="../search.html">search</a>| </li> <li><a href="../examples/index.html">examples</a>| </li> <li><a href="../gallery.html">gallery</a>| </li> <li><a href="../contents.html">docs</a> »</li> <li><a href="index.html" >User’s Guide</a> »</li> <li><a href="index_text.html" >Working with text</a> »</li> </ul> </div> <div class="footer"> © Copyright 2008, John Hunter, Darren Dale, Michael Droettboom. Last updated on Oct 04, 2012. Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.7. </div> </body> </html>