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