FAQ
This may be a foolish question, but what's the most straightforward way to
plot a bunch of data in Python?

That is, I want to write a program that does some number crunching, and then
I want to change some parameters and watch how the changes affect the
results. I could produce a file to hand to gnuplot, but that's a bit of a
pain; so I'm wondering if there is a widely used package to which I can give
my x-y pairs and have it produce a graph for me with axes, scaling, etc.

Search Discussions

  • Danmcleran at Apr 25, 2006 at 8:06 pm
    Try matplotlib, it's pretty nice and easy to use.
  • Jorge Godoy at Apr 25, 2006 at 8:17 pm

    Andrew Koenig wrote:

    This may be a foolish question, but what's the most straightforward way to
    plot a bunch of data in Python?

    That is, I want to write a program that does some number crunching, and
    then I want to change some parameters and watch how the changes affect the
    results. I could produce a file to hand to gnuplot, but that's a bit of a
    pain; so I'm wondering if there is a widely used package to which I can
    give my x-y pairs and have it produce a graph for me with axes, scaling,
    etc.
    I liked the output of PyChart. It is pretty easy to use. Also, I don't
    know what you're doing with numbers, but there's rpy to use with R.

    --
    Jorge Godoy <godoy at ieee.org>

    "Quidquid latine dictum sit, altum sonatur."
    - Qualquer coisa dita em latim soa profundo.
    - Anything said in Latin sounds smart.
  • John Hunter at Apr 25, 2006 at 8:19 pm
    "Andrew" == Andrew Koenig <ark at acm.org> writes:
    Andrew> This may be a foolish question, but what's the most
    Andrew> straightforward way to plot a bunch of data in Python?


    in matplotlib/pylab

    from pylab import figure, show
    x = range(10)
    y = [val**2 for val in x]
    fig = figure()
    ax = fig.add_subplot(111)
    ax.plot(x,y)
    ax.set_title('My first plot')
    ax.set_xlabel('x')
    ax.set_ylabel('y')
    show()

    Tutorial: http://matplotlib.sourceforge.net/tutorial.html
    Screenshots: http://matplotlib.sourceforge.net/screenshots.html

    JDH
  • Lou Pecora at Apr 25, 2006 at 10:26 pm
    In article <lgv3g.1444$xX5.1193 at bgtnsc05-news.ops.worldnet.att.net>,
    "Andrew Koenig" wrote:
    This may be a foolish question, but what's the most straightforward way to
    plot a bunch of data in Python?

    That is, I want to write a program that does some number crunching, and then
    I want to change some parameters and watch how the changes affect the
    results. I could produce a file to hand to gnuplot, but that's a bit of a
    pain; so I'm wondering if there is a widely used package to which I can give
    my x-y pairs and have it produce a graph for me with axes, scaling, etc.
    I second all other recommendations on matplotlib.

    -- Lou Pecora (my views are my own) REMOVE THIS to email me.
  • James Graham at Apr 26, 2006 at 8:42 pm

    Andrew Koenig wrote:
    This may be a foolish question, but what's the most straightforward way to
    plot a bunch of data in Python?

    That is, I want to write a program that does some number crunching, and then
    I want to change some parameters and watch how the changes affect the
    results. I could produce a file to hand to gnuplot, but that's a bit of a
    pain; so I'm wondering if there is a widely used package to which I can give
    my x-y pairs and have it produce a graph for me with axes, scaling, etc.
    In addition to the other (excellent) suggestions, you could have a look
    at Veusz [1]. It has a GUI which, in your case, you could use to create
    all the boilerplate code (axes, labels, etc.) interactively and then use
    the scripting interface to feed in different datasets as required. The
    major limitation is that it requires Qt/PyQt 3 so I don't know how easy
    it is to get working under Windows.

    [1] http://home.gna.org/veusz/

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppython-list @
categoriespython
postedApr 25, '06 at 8:03p
activeApr 26, '06 at 8:42p
posts6
users6
websitepython.org

People

Translate

site design / logo © 2022 Grokbase