class eelbrain.plot.TopoArray(y, xax=None, ds=None, sub=None, vmax=None, vmin=None, cmap=None, contours=None, ntopo=3, t=(), proj='default', res=None, interpolation=None, clip='even', clip_distance=0.05, head_radius=None, head_pos=0, im_interpolation=None, sensorlabels=None, mark=None, mcolor=None, xticklabels=-1, axtitle=True, title=None, *args, **kwargs)

Channel by sample plots with topomaps for individual time points

y : (list of) NDVar

Data to plot.

xax : None | categorial

Create a separate plot for each cell in this model.

ds : None | Dataset

If a Dataset is provided, data can be specified as strings.

sub : str | array

Specify a subset of the data.

vmax : scalar

Upper limits for the colormap (default is determined from data).

vmin : scalar

Lower limit for the colormap (default -vmax).

cmap : str

Colormap (default depends on the data).

contours : int | sequence | dict

Contours to draw on topomaps. Can be an int (number of contours, including vmin/vmax), a sequence (values at which to draw contours), or a **kwargs dict (must contain at least the “levels” key). Default is no contours.

ntopo | int

number of topomaps per array-plot.

t : list of scalar (len <= ntopo)

Time points for topomaps.

proj : str

The sensor projection to use for topomaps.

res : int

Resolution of the topomaps (width = height = res).

interpolation : ‘nearest’ | ‘linear’ | ‘spline’

Method for interpolating topo-map between sensors (default is based on mne-python).

clip : bool | ‘even’ | ‘circle’

Outline for clipping topomaps: ‘even’ to clip at a constant distance (default), ‘circle’ to clip using a circle.

clip_distance : scalar

How far from sensor locations to clip (1 is the axes height/width).

head_radius : scalar | tuple

Radius of the head outline drawn over sensors (on sensor plots with normalized positions, 0.45 is the outline of the topomap); 0 to plot no outline; tuple for separate (right, anterior) radius. The default is determined automatically.

head_pos : scalar

Head outline position along the anterior axis (0 is the center, 0.5 is the top end of the plot).

im_interpolation : str

Topomap image interpolation (see Matplotlib’s imshow()). Matplotlib 1.5.3’s SVG output can’t handle uneven aspect with interpolation='none', use interpolation='nearest' instead.

sensorlabels : ‘none’ | ‘index’ | ‘name’ | ‘fullname’

Show sensor labels. For ‘name’, any prefix common to all names is removed; with ‘fullname’, the full name is shown.

mark : Sensor index

Sensors which to mark.

mcolor : matplotlib color

Color for marked sensors.

xticklabels : bool | int | list of int

Specify which axes should be annotated with x-axis tick labels. Use int for a single axis (default -1), a sequence of int for multiple specific axes, or bool for all/none.

axtitle : bool | sequence of str

Title for the individual axes. The default is to show the names of the epochs, but only if multiple axes are plotted.

Also accepts General layout parameters.


  • LMB click on a topomap selects it for tracking the mouse pointer
    • LMB on the array plot fixates the topomap time point
  • RMB on a topomap removes the topomap


add_contour(self, meas, level[, color]) Add a contour line
add_hline(self, y[, axes]) Draw a horizontal line on one or more axes
add_hspan(self, bottom, top[, axes]) Draw a horizontal bar on one or more axes
add_vline(self, x[, axes]) Draw a vertical line on one or more axes
add_vspan(self, xmin, xmax[, axes]) Draw a vertical bar on one or more axes
close(self) Close the figure.
draw(self) (Re-)draw the figure (after making manual changes).
draw_crosshairs(self[, enable]) Draw crosshairs under the cursor
get_vlim(self[, meas]) Retrieve colormap value limits as (vmin, vmax) tuple
image(self[, name, format]) Create FMTXT Image from the figure
plot_colorbar(self[, label, label_position, …]) Plot a colorbar corresponding to the displayed data
save(self, *args, **kwargs) Short-cut for Matplotlib’s savefig()
set_cmap(self, cmap[, meas]) Change the colormap
set_name(self, name) Set the figure window title
set_topo_t(self, topo_id, t) Set the time point for a topo-map (same for all array plots)
set_topo_t_single(self, topo_id, t) Set the time for a single topomap.
set_topo_ts(self, *t_list) Set the time points displayed in topo-maps across all array-plots
set_vlim(self[, v, vmax, meas]) Change the colormap limits
set_xlabel(self, label[, ax]) Set the label for the x-axis
set_xtick_rotation(self, rotation) Rotate every x-axis tick-label by an angle (counterclockwise, in degrees)
set_ylabel(self, label[, ax]) Set the label for the y-axis