File Exchange

image thumbnail

Flexible and Fast Spike Raster Plotting

version 1.3.0.0 (138 KB) by Jeffrey Chiou
Plots spike rasters from spike times or binary trains. Faster than most implementations.

37 Downloads

Updated 01 Apr 2014

View License

This function quickly plots raster plots of large quantities of spike train data. Inputs can be spike times or binary spike train data organized by trial. It can also plot well-formatted single spike trains (example in zip file).
Speed is achieved by only plotting one object per figure (a line with segments separated by NaNs) and avoiding loops.
You can plot vertical lines, horizontal lines, and dots with formatting, on specific figures. You can also adjust the spike duration, relative spike start time, and vertical spike position. The x-axes for timing data are automatically set to show all spikes, but can alternatively be adjusted to your liking.
Please look at the .m file help for more extensive documentation. A test plotting file and sample figures are also attached.

Request features in comments, or to the email in my profile!

Cite As

Jeffrey Chiou (2020). Flexible and Fast Spike Raster Plotting (https://www.mathworks.com/matlabcentral/fileexchange/45671-flexible-and-fast-spike-raster-plotting), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (10)

JWall

I take it back - just found 'XLimForCell' parameter =)

JWall

Works well except for one bug: crashes when there are no spikes to plot (this is annoying if plotting a bunch of data and occasionally there are some sets of trials without spikes) - would be nice to create blank plot in this case instead of crashing.

Sarah

Hi,
The function works but I keep receiving this error, am I the only one?

Error using plot
Error in color/linetype argument.

Error in plotSpikeRaster (line 446)
plot(xPoints, yPoints, 'color.k', lineFormat{:}); %plot(xPoints, yPoints, 'k', lineFormat{:});

Lino

Lino

victor

Is cool but when the data is arranged in columns there is an error message, the program transposes them incorrectly. I had to turn my columns into rows. Other than that is great. Thanks

mat

Thanks a lot for sharing this file :)

Matteo

very nice

John Graef

Works great, very fast. Nice job!

Updates

1.3.0.0

Fixed bug in which relSpikeStartTime did nothing to certain plots. Added parameter rasterWindowOffset, which is the same as relSpikeStartTime, but highlights that x-axis can be shifted w/o XTick and XAxisLabel.

1.2.0.0

Added ability to specify vertical spike height for 'vertline' plots. Allows gaps between trials.

1.1.0.0

Description text

MATLAB Release Compatibility
Created with R2013a
Compatible with any release
Platform Compatibility
Windows macOS Linux