Uploaded image for project: 'The Virtual Brain'
  1. The Virtual Brain
  2. TVB-1468

Make a summary about time-series or plot lines

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.2.1
    • Component/s: Visualizers
    • Labels:

      Description

      Good morning Lia and Mihai,

      Here are some thoughts about the time-series. This summary was composed using some email exchanges/discussions I had with Stuart, and with Lia, old and current issues in Jira, plus some personal extra bits and pieces. It is not complete yet, but I hope it's useful.

      Maybe after the meeting I can rework on this so we can send some specifications to Robert with the main priorities.

      Cheers,

      Paula

      All of these examples use the same mechanism to visualize time-series data by using one axis as a dimension for time.

        1. Basic features (already reported):

      + Inspecting the values of the line at mouse-over. People need the details. Beautiful example: http://square.github.io/cubism/

      + Selecting the number of time-points to be displayed (similar to page size, but this value should be user defined). TVB-1292

      + Adjustable scaling and spacing of the time-series. Related to TVB-1454

      + Colouring selected lines or applying a colormap to the set of lines. It's easier to visually identify.
      This feature would be useful for the following time series:

      1) Region average time series resulting from surface simulations, using the spatial average monitor and the region mapping.
      2) Time Series region from surface simulations.
      3) Vertices time series from a given region (using the region mapping).

      A dual viewer could be composed in the following manner:

      <Capture d'écran 2014-06-20 08.38.28.png>

      At the top, we have the cortical surface in the characteristics anatomical orthogonal planes.
      Below, we can select the region. Each region has assigned one colour. It is essentially similar to what the surface viewer does when it colours the surface based on the Region Mapping. Here, we would have the option of colouring only the regions that are selected.

      On the right, or at the bottom we could have the time-series visualizers, displaying the traces of:

      • the corresponding regions (from TimeSeriesRegion and TimeSeries - Spatial Average)
      • the corresponding vertices (from TimeSeriesSurface)

      The line colouring should match the colours in the selector.

        1. Behaviour:

      In general, changing the variable displayed (state variable, node, mode), or adding one shouldn't result in the complete resetting of the viewer. TVB-1372

        1. Comparison of results - related to TVB-1327

      This means to compose a figure with several subplots using the same visualization component (eg, line-plot). This is called small multiples. Small multiples are multiple time-series graphs (what kind these graphs are is another question) arranged within a grid. Small multiples are more use full to understand different datasets on its own and not as a summary opposed to the stacked graphs]

      There are also a number of other useful ways to look at the data, such
      as spectrograms, power spectrum, time series, etc.

      <Capture d'écran 2014-06-20 08.17.15.png>

      This is an example of time-series viewer (for EEG, or other type of time-series). It is called pbrain which is part of the NeuroImaging in Python suite NIPY. The lower axes are used to display the spectrogram of one of the EEG channels (or one the nodes). This display is very similar to what we have implemented fro the scripting interface (time-series interactive).

      Those which are
      essentially line plots will often benefit from being over-plotted on
      the same figure. So, as well as a "side by side" view, where
      appropriate, "overlaying" data should be supported, that is multiple
      lines sharing a single set of axes with some means such as colour or
      line style used to distinguish them.

      This combination of small multiples and overlaying of data will be used
      for comparing the results of any set of simulations as well as
      potentially comparing simulation with experimental data.
      Moreover, since the time-series from the basic monitors (temporal average, spatial average, temporal subsample, raw ...) yield a n-dimensional array, "side by side" or overlaying the time-series from two different state variables or modes is desirable.

      <SideBySideModes.png>

      This are the time-series from the temporal average monitor using the Stefanescu-Jirsa 3D model, the 66 ROIs connectivity matrix. "Side by side" row-wise, one mode of the model.
      "Side by side" column-wise, time series of the two different population of neurons represented in the model. Two state variables (blue, black) are "overlaying" in each subplot. The transparent traces/lines are the individual traces of each node. The opaque lines are the average time-series computed over nodes. By the way, these are data generated with TVB. I have to add the demos to the repo once the paper is published.

        1. As a component of other visualizers (dual views).

      Some thoughts about 3D Brain/EEG visualizers. In visualization this is formally called static state replacement, because the time dimension is hidden. Only one frame at the time is presented.

      In the future it would seem appropriate to have only one 3D viewer with the ability to enable/disable what's displayed on the right (eg, time-series/line plots).
      Also, it would seem useful to be able to select what is viewed on the surface, on which surface, and times series plots with the only restriction being that they are consistent datasets.

      The purpose of the panels on the right with the projections onto three orthogonal planes isn't very clear.

      For the surface there are the two possibilities:
      1) Cortical activity on the cortical surface;
      2) EEG and MEG monitor data, interpolated onto the outer skin (or eeg cap, or subject's head) and a sphere respectively;

      For the time series there are 3 that would make the most sense:
      1) Region average time series (from the spatial average monitor);
      2) EEG or MEG time series; and
      3) vertices time series from a given region (using the region mapping).

      For comparison of the results, small multiples would probably be the best
      presentation for looking at the activity on the cortical surface (eg, several subplots with the 3D surface representation) like in the figure you made for the Mantini networks.

      For time-series from surface-based simulations, probably the best alternative we have is plotting the time-series in 2D displays (eg, like matrix) where one axis is time and the other is vertices.

      During the meeting some issues that came up were

      + Make a clear distinction between scaling and spacing
      + Clarify the description of the toggle controls.
      + Find a better description for "measure points". These are "Sensors" in the case of EEG/MEG/SEG; "Sources" in the case of displaying TimeSeriesRegion.

      + *** Display the same time series twice in the Animated Time-Series Visualizer***
      + Static view of the surface coloured by region as a component of a multiple-display visualizer .

        Attachments

          Activity

            People

            • Assignee:
              paula.sanz-leon Paula Sanz Leon
              Reporter:
              paula.sanz-leon Paula Sanz Leon
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Due:
                Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 5 hours Original Estimate - 5 hours
                5h
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 6 hours
                6h