Sophie

Sophie

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

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

.. _pylab_examples-webapp_demo:

pylab_examples example code: webapp_demo.py
===========================================

[`source code <webapp_demo.py>`_]

::

    #!/usr/bin/env python
    # -*- noplot -*-
    # This example shows how to use the agg backend directly to create
    # images, which may be of use to web application developers who want
    # full control over their code without using the pylab interface to
    # manage figures, figure closing etc.
    #
    # The rc command is used to create per-script default figure
    # customizations of the rc parameters; see
    # http://matplotlib.sf.net/matplotlibrc .  You may prefer to set the
    # rc parameters in the rc file itself.  Note that you can keep
    # directory level default configurations by placing different rc files
    # in the directory that the script runs in.
    #
    # I am making no effort here to make a figure that looks good --
    # rather I am just trying to show the various ways to use matplotlib
    # to customize your figure using the matplotlib API
    
    import matplotlib
    matplotlib.use('Agg')  # force the antigrain backend
    from matplotlib import rc
    from matplotlib.backends.backend_agg import FigureCanvasAgg
    from matplotlib.figure import Figure
    from matplotlib.cbook import iterable
    import numpy as np
    
    def make_fig():
        """
        make a figure
    
        No need to close figures or clean up since the objects will be
        destroyed when they go out of scope
        """
        fig = Figure()
        #ax = fig.add_subplot(111)  # add a standard subplot
    
        # add an axes at left, bottom, width, height; by making the bottom
        # at 0.3, we save some extra room for tick labels
        ax = fig.add_axes([0.2, 0.3, 0.7, 0.6])
    
        line,  = ax.plot([1,2,3], 'ro--', markersize=12, markerfacecolor='g')
    
        # make a translucent scatter collection
        x = np.random.rand(100)
        y = np.random.rand(100)
        area = np.pi*(10 * np.random.rand(100))**2 # 0 to 10 point radiuses
        c = ax.scatter(x,y,area)
        c.set_alpha(0.5)
    
        # add some text decoration
        ax.set_title('My first image')
        ax.set_ylabel('Some numbers')
        ax.set_xticks( (.2,.4,.6,.8) )
        labels = ax.set_xticklabels(('Bill', 'Fred', 'Ted', 'Ed'))
    
        # To set object properties, you can either iterate over the
        # objects manually, or define you own set command, as in setapi
        # above.
        for l in labels:
            l.set_rotation(45)
            l.set_fontsize(12)
    
        canvas = FigureCanvasAgg(fig)
        canvas.print_figure('webapp', dpi=150)
    
    make_fig()
    

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