Sophie

Sophie

distrib > Mandriva > 2010.2 > i586 > media > contrib-backports > by-pkgid > a44f8c7e78ee9c5838c1fb080c9e7630 > files > 1430

python-matplotlib-doc-1.1.1-1mdv2010.1.noarch.rpm

.. _pylab_examples-subplots_demo:

pylab_examples example code: subplots_demo.py
=============================================



.. plot:: /home/mandrake/rpm/BUILD/matplotlib-1.1.1/doc/mpl_examples/pylab_examples/subplots_demo.py

::

    """Examples illustrating the use of plt.subplots().
    
    This function creates a figure and a grid of subplots with a single call, while
    providing reasonable control over how the individual plots are created.  For
    very refined tuning of subplot creation, you can still use add_subplot()
    directly on a new figure.
    """
    
    import matplotlib.pyplot as plt
    import numpy as np
    
    # Simple data to display in various forms
    x = np.linspace(0, 2*np.pi, 400)
    y = np.sin(x**2)
    
    plt.close('all')
    
    # Just a figure and one subplot
    f, ax = plt.subplots()
    ax.plot(x, y)
    ax.set_title('Simple plot')
    
    # Two subplots, the axes array is 1-d
    f, axarr = plt.subplots(2, sharex=True)
    axarr[0].plot(x, y)
    axarr[0].set_title('Sharing X axis')
    axarr[1].scatter(x, y)
    
    # Two subplots, unpack the axes array immediately
    f, (ax1, ax2) = plt.subplots(1, 2, sharey=True)
    ax1.plot(x, y)
    ax1.set_title('Sharing Y axis')
    ax2.scatter(x, y)
    
    # Three subplots sharing both x/y axes
    f, (ax1, ax2, ax3) = plt.subplots(3, sharex=True, sharey=True)
    ax1.plot(x, y)
    ax1.set_title('Sharing both axes')
    ax2.scatter(x, y)
    ax3.scatter(x, 2*y**2-1,color='r')
    # Fine-tune figure; make subplots close to each other and hide x ticks for
    # all but bottom plot.
    f.subplots_adjust(hspace=0)
    plt.setp([a.get_xticklabels() for a in f.axes[:-1]], visible=False)
    
    # Four axes, returned as a 2-d array
    f, axarr = plt.subplots(2, 2)
    axarr[0,0].plot(x, y)
    axarr[0,0].set_title('Axis [0,0]')
    axarr[0,1].scatter(x, y)
    axarr[0,1].set_title('Axis [0,1]')
    axarr[1,0].plot(x, y**2)
    axarr[1,0].set_title('Axis [1,0]')
    axarr[1,1].scatter(x, y**2)
    axarr[1,1].set_title('Axis [1,1]')
    # Fine-tune figure; hide x ticks for top plots and y ticks for right plots
    plt.setp([a.get_xticklabels() for a in axarr[0,:]], visible=False)
    plt.setp([a.get_yticklabels() for a in axarr[:,1]], visible=False)
    
    # Four polar axes
    plt.subplots(2, 2, subplot_kw=dict(polar=True))
    
    plt.show()
    

Keywords: python, matplotlib, pylab, example, codex (see :ref:`how-to-search-examples`)