fsleyes.plotting.powerspectrumseries¶
This module provides DataSeries sub-classes which are used
by the PowerSpectrumPanel for plotting power spectra.
The following classes are provided:
The |
|
The |
|
This class is the frequency-spectrum equivalent of the |
|
An |
|
An |
|
An |
|
The |
-
fsleyes.plotting.powerspectrumseries.calcPowerSpectrum(data, varNorm=False)[source]¶ Calculates a power spectrum for the given one-dimensional data array. If
varNorm is True, the data is de-meaned and normalised by its standard deviation before the fourier transformation.- Parameters
data – Numpy array containing the time series data
varNorm – Normalise the data before fourier transformation
- Returns
If
datacontains real values, the magnitude of the power spectrum is returned. Ifdatacontains complex values, the complex power spectrum is returned.
-
fsleyes.plotting.powerspectrumseries.calcFrequencies(data, sampleTime)[source]¶ Calculates the frequencies of the power spectrum for the given data.
- Parameters
data – The input time series data
sampleTime – Time between each data point
- Returns
A
numpyarray containing the frequencies of the power spectrum fordata
-
fsleyes.plotting.powerspectrumseries.magnitude(data)[source]¶ Returns the magnitude of the given complex data.
-
fsleyes.plotting.powerspectrumseries.phase(data)[source]¶ Returns the phase of the given complex data.
-
fsleyes.plotting.powerspectrumseries.phaseCorrection(spectrum, freqs, p0, p1)[source]¶ Applies phase correction to the given complex power spectrum.
- Parameters
spectrum – Complex-valued power spectrum
freqs – Spectrum frequency bins
p0 – Zero order phase correction term
p1 – First order phase correction term
- Returns
The corrected power spectrum.
-
class
fsleyes.plotting.powerspectrumseries.PowerSpectrumSeries[source]¶ Bases:
objectThe
PowerSpectrumSeriesencapsulates a power spectrum data series from an overlay. ThePowerSpectrumSeriesclass is a base mixin class for all other classes in this module.-
varNorm= <MagicMock name='mock.Boolean()' id='281473497326640'>¶ If
True, the data is normalised to unit variance before the fourier transformation.
-
property
sampleTime¶ Returns the time between time series samples for the overlay data.
-
__dict__= mappingproxy({'__module__': 'fsleyes.plotting.powerspectrumseries', '__doc__': 'The ``PowerSpectrumSeries`` encapsulates a power spectrum data series\n from an overlay. The ``PowerSpectrumSeries`` class is a base mixin class\n for all other classes in this module.\n ', 'varNorm': <MagicMock name='mock.Boolean()' id='281473497326640'>, 'sampleTime': <property object>, '__dict__': <attribute '__dict__' of 'PowerSpectrumSeries' objects>, '__weakref__': <attribute '__weakref__' of 'PowerSpectrumSeries' objects>})¶
-
__module__= 'fsleyes.plotting.powerspectrumseries'¶
-
__weakref__¶ list of weak references to the object (if defined)
-
-
class
fsleyes.plotting.powerspectrumseries.VoxelPowerSpectrumSeries(*args, **kwargs)[source]¶ Bases:
fsleyes.plotting.dataseries.VoxelDataSeries,fsleyes.plotting.powerspectrumseries.PowerSpectrumSeriesThe
VoxelPowerSpectrumSeriesclass encapsulates the power spectrum of a single voxel from a 4DImageoverlay. The voxel is dictated by theDisplayContext.locationproperty.-
__init__(*args, **kwargs)[source]¶ Create a
VoxelPowerSpectrumSeries. All arguments are passed to theVoxelDataSeries.__init__()method. AValueErroris raised if the overlay is not a 4DImage.
-
__module__= 'fsleyes.plotting.powerspectrumseries'¶
-
-
class
fsleyes.plotting.powerspectrumseries.ComplexPowerSpectrumSeries(overlay, overlayList, displayCtx, plotPanel)[source]¶ Bases:
fsleyes.plotting.powerspectrumseries.VoxelPowerSpectrumSeriesThis class is the frequency-spectrum equivalent of the
ComplexTimeSeriesclass - see it for more details.-
plotReal= <MagicMock name='mock.Boolean()' id='281473497326640'>¶
-
plotImaginary= <MagicMock name='mock.Boolean()' id='281473497326640'>¶
-
plotMagnitude= <MagicMock name='mock.Boolean()' id='281473497326640'>¶
-
plotPhase= <MagicMock name='mock.Boolean()' id='281473497326640'>¶
-
zeroOrderPhaseCorrection= <MagicMock name='mock.Real()' id='281473497926576'>¶ Apply zero order phase correction to the power spectrum of the complex data.
-
firstOrderPhaseCorrection= <MagicMock name='mock.Real()' id='281473497926576'>¶ Apply first order phase correction to the power spectrum of the complex data.
-
__init__(overlay, overlayList, displayCtx, plotPanel)[source]¶ Create a
ComplexPowerSpectrumSeries. All arguments are passed through to theVoxelPowerSpectrumSeriesconstructor.
-
getData()[source]¶ If
plotRealis true, returns the real component of the power spectrum of the data at the current voxel. Otherwise returns(None, None).Every time this method is called, the power spectrum is calculated, phase correction is applied, and a reference to the resulting complex power spectrum (and frequencies) is saved; it is accessible via the
cachedData()property, for use by theImaginaryPowerSpectrumSeries,MagnitudePowerSpectrumSeries, andPhasePowerSpectrumSeries.
-
extraSeries()[source]¶ Returns a list of additional series to be plotted, based on the values of the
plotImaginary,plotMagnitudeandplotPhaseproperties.
-
__module__= 'fsleyes.plotting.powerspectrumseries'¶
-
-
class
fsleyes.plotting.powerspectrumseries.ImaginaryPowerSpectrumSeries(parent, *args, **kwargs)[source]¶ Bases:
fsleyes.plotting.dataseries.DataSeriesAn
ImaginaryPowerSpectrumSeriesrepresents the power spectrum of the imaginary component of a complex-valued image.ImaginaryPowerSpectrumSeriesinstances are created byComplexPowerSpectrumSeriesinstances.-
__init__(parent, *args, **kwargs)[source]¶ Create an
ImaginaryPowerSpectrumSeries.- Parameters
parent – The
ComplexPowerSpectrumSerieswhich owns thisImaginaryPowerSpectrumSeries.
All other arguments are passed through to the
DataSeriesconstructor.
-
__module__= 'fsleyes.plotting.powerspectrumseries'¶
-
-
class
fsleyes.plotting.powerspectrumseries.MagnitudePowerSpectrumSeries(parent, *args, **kwargs)[source]¶ Bases:
fsleyes.plotting.dataseries.DataSeriesAn
MagnitudePowerSpectrumSeriesrepresents the magnitude of a complex-valued image.MagnitudePowerSpectrumSeriesinstances are created byComplexPowerSpectrumSeriesinstances.-
__init__(parent, *args, **kwargs)[source]¶ Create an
ImaginaryPowerSpectrumSeries.- Parameters
parent – The
ComplexPowerSpectrumSerieswhich owns thisImaginaryPowerSpectrumSeries.
All other arguments are passed through to the
DataSeriesconstructor.
-
__module__= 'fsleyes.plotting.powerspectrumseries'¶
-
-
class
fsleyes.plotting.powerspectrumseries.PhasePowerSpectrumSeries(parent, *args, **kwargs)[source]¶ Bases:
fsleyes.plotting.dataseries.DataSeriesAn
PhasePowerSpectrumSeriesrepresents the phase of a complex-valued image.PhasePowerSpectrumSeriesinstances are created byComplexPowerSpectrumSeriesinstances.-
__init__(parent, *args, **kwargs)[source]¶ Create an
ImaginaryPowerSpectrumSeries.- Parameters
parent – The
ComplexPowerSpectrumSerieswhich owns thisImaginaryPowerSpectrumSeries.
All other arguments are passed through to the
DataSeriesconstructor.
-
__module__= 'fsleyes.plotting.powerspectrumseries'¶
-
-
class
fsleyes.plotting.powerspectrumseries.MelodicPowerSpectrumSeries(*args, **kwargs)[source]¶ Bases:
fsleyes.plotting.dataseries.DataSeries,fsleyes.plotting.powerspectrumseries.PowerSpectrumSeriesThe
MelodicPowerSpectrumSeriesclass encapsulates the power spectrum of the time course for a single component of aMelodicImage. The component is dictated by theNiftiOpts.volumeproperty.-
__init__(*args, **kwargs)[source]¶ Create a
MelodicPowerSpectrumSeries. All arguments are passed through to thePowerSpectrumSeries.__init__()method.
-
getData()[source]¶ Returns the power spectrum for the current component of the
MelodicImage, as defined by theNiftiOpts.volumeproperty.
-
__module__= 'fsleyes.plotting.powerspectrumseries'¶
-
-
class
fsleyes.plotting.powerspectrumseries.MeshPowerSpectrumSeries(*args, **kwargs)[source]¶ Bases:
fsleyes.plotting.dataseries.DataSeries,fsleyes.plotting.powerspectrumseries.PowerSpectrumSeriesA
MeshPowerSpectrumSeriesobject encapsulates the power spectrum for the data from aMeshoverlay which has some time series vertex data associated with it. See theMeshOpts.vertexDataproperty.-
__init__(*args, **kwargs)[source]¶ Create a
MeshPowerSpectrumSeriesinstance. All arguments are passed through toDataSeries.__init__().
-
_MeshPowerSpectrumSeries__haveData()¶ Returns
Trueif there is currently time series data to show for thisMeshPowerSpectrumSeries,Falseotherwise.
-
__module__= 'fsleyes.plotting.powerspectrumseries'¶
-