On 09/26/2012 04:35 AM, Todd wrote:
On Mon, Sep 24, 2012 at 3:33 PM, Todd <toddr...@gmail.com <mailto:toddr...@gmail.com>> wrote:

    I would like to add a new plot type to matplotlib.  Of course I am
    willing to implement it myself, but I want to confirm that it is
    acceptable and iron out the implementation details and API first
    so there are no major surprises when I submit it.

    I tentatively am calling the plot type an "EventRaster" plot (name
    suggestions, along with any other suggestions, are welcome).  The
    plot is made up if horizontal rows of identical vertical lines
    and/or markers.  Each line or marker represents a discrete event,
    and each row represents a single sequence of events (such as a
    trial).  The x-axis position of the line or marker identifies the
    location of the event by some measure. An example of what such a
    plot often looks like is below.

    http://hebb.mit.edu/courses/9.29/2003/athena/dylanh/quad-rast.gif

    This sort of plot is used ubiquitously in neuroscience.  It is
    used to show the time of discrete neural (brain cell) events
    (called "spikes") over time in repeated trials, and is generally
    called a spike raster, raster plot, or raster graph.  However, it
    can be used in any situation where you are only concerned with the
    position of events but not their amplitude, especially if you want
    to look for patterns in those events or look for differences
    between multiple sequences of events.

    Plotting the timing of events is an obvious use case, such as
    photons hitting photodetectors, radioactive decay events, arrival
    of patients to hospitals, calls to hotlines, or car accidents in
cities. However, the events do not have to be relative to time. It could be position, for example, such as tree rings along bore
    holes, road crossings along railroad tracks, layers in sediment
    cores, or particular sequences along a DNA strands.

    I'll cover possible implementation details in the next email if
    everyone thinks this is a good idea.


So does anyone think this would be a useful plot type? If so I can explain how I plan to implement it and we can discuss changes or improvements to that.

Sorry to not get back to you sooner -- a number of us are busy here getting the 1.2.0 release ready at the moment. I think this is definitely a worthwhile plot type to add. Similar plots are used in Computer Science, for example, to visualize the execution of multi-threaded applications, or other scheduling problems. I'd personally use it for that.

So, yes, let's start talking implementation. Or, if easier, you could just submit a pull request and we can go from there. Whatever method seems most appropriate to you.

Cheers,
Mike
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

Reply via email to