fsleyes.plotting.dataseries
This module provides the DataSeries class, the base class for
classes used by the PlotCanvas for plotting data.
- class fsleyes.plotting.dataseries.DataSeries(overlay, overlayList, displayCtx, plotCanvas)[source]
Bases:
__main__.docbuilder.run.<locals>.MockClassA
DataSeriesinstance encapsulates some data to be plotted by aPlotCanvas, possibly with the data extracted from an overlay in theOverlayList.Sub-class implementations must:
Accept an overlay object,
OverlayList,DisplayContext, andPlotCanvasin their__init__method, and pass these through toDataSeries.__init__().Override the
getData()methodOverride the
redrawProperties()method if necessary
The overlay is accessible as an instance attribute called
overlay.Note
Some
DataSeriesinstances may not be associated with an overlay (e.g. series imported loaded a text file). In this case, theoverlayattribute will beNone.Each``DataSeries`` instance is plotted as a line, with the line style defined by properties on the
DataSeriesinstance, such ascolour,lineWidthetc.- colour = <MagicMock name='mock.Colour()' id='139881574128016'>
Line colour.
- enabled = <MagicMock name='mock.Boolean()' id='139881574968736'>
Draw or not draw?
- alpha = <MagicMock name='mock.Real()' id='139881573963312'>
Line transparency.
- label = <MagicMock name='mock.String()' id='139881573989728'>
Line label (used in the plot legend).
- lineWidth = <MagicMock name='mock.Choice()' id='139881574868272'>
Line width.
- lineStyle = <MagicMock name='mock.Choice()' id='139881574868272'>
Line style. See https://matplotlib.org/gallery/lines_bars_and_markers/linestyles.html
- __init__(overlay, overlayList, displayCtx, plotCanvas)[source]
Create a
DataSeries.- Parameters
overlay – The overlay from which the data to be plotted is retrieved. May be
None.overlayList – The
OverlayListinstance.displayCtx – The
DisplayContextinstance.plotCanvas – The
PlotCanvasthat owns thisDataSeries.
- property name
Returns a unique name for this
DataSeriesinstance.
- property overlay
Returns the overlay associated with this
DataSeriesinstance.
- property overlayList
Returns the
OverlayList.
- property displayCtx
Returns the
DisplayContext.
- property plotCanvas
Returns the
PlotCanvasthat owns thisDataSeriesinstance.
- destroy()[source]
This method must be called when this
DataSeriesinstance is no longer needed. This implementation may be overridden by sub-classes which need to perform any clean-up operations. Sub-class implementations should call this implementation.
- redrawProperties()[source]
Returns a list of all properties which, when their values change, should result in this
DataSeriesbeing re-plotted. This method may be overridden by sub-classes.
- extraSeries()[source]
Some
DataSeriestypes have additionalDataSeriesassociated with them (see e.g. theFEATTimeSeriesclass). This method can be overridden to return a list of these extraDataSeriesinstances. The default implementation returns an empty list.
- setData(xdata, ydata)[source]
Set the data to be plotted. This method is irrelevant if a
DataSeriessub-class has overriddengetData().
- getData()[source]
This method should be overridden by sub-classes. It must return the data to be plotted, as a tuple of the form:
(xdata, ydata)where
xdataandydataare sequences containing the x/y data to be plotted.The default implementation returns the data that has been set via the
setData()method.
- __annotations__ = {}
- __module__ = 'fsleyes.plotting.dataseries'
- class fsleyes.plotting.dataseries.VoxelDataSeries(*args, **kwargs)[source]
Bases:
fsleyes.plotting.dataseries.DataSeriesThe
VoxelDataSeriesclass is aDataSeriesclass which provides some functionality useful to data series that represent data from a voxel in anImageoverlay.It contains a built-in cache which is used to prevent repeated access to data from the same voxel.
Sub-classes may need to override:
the
currentVoxelLocation()method, which generates the location index for the current location, and which is used as the unique cache key when the corresponding data is cachedThe
currentVoxelData()method, which retrieves and/or calculates the data at the current location. This is the data which is cached, and which is returned by thedataAtCurrentVoxel()method.
- __init__(*args, **kwargs)[source]
Create a
VoxelDataSeries. All arguments are passed through to theDataSeriesconstructor.
- __annotations__ = {}
- __module__ = 'fsleyes.plotting.dataseries'
- getData()[source]
Returns the
(xdata, ydata)at the current voxel location.This method may be overridden by sub-classes.
- dataAtCurrentVoxel = <MagicMock name='mock.utils.idle.mutex()' id='139881570537040'>
- currentVoxelLocation()[source]
Used by
dataAtCurrentVoxel(). Returns the current voxel location. This is used as a key for the voxel data cache implemented within thedataAtCurrentVoxel()method, and subsequently passed to thecurrentVoxelData()method.This method may be overridden by sub-classes.
- currentVoxelData(location)[source]
Used by
dataAtCurrentVoxel(). Returns the data at the specified location.This method may be overridden by sub-classes.