Warning: The EBRAINS Drive and EBRAINS Lab will down on Tuesday, the 8th of July 2025 starting from 5pm CEST (my timezone) for up to 1 hour.


Changes for page Widget TimeSeries

Last modified by ldomide on 2023/05/23 14:34

From version 25.1
edited by ldomide
on 2023/03/08 17:29
Change comment: There is no comment for this version
To version 12.1
edited by rominabaila
on 2022/04/12 09:31
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.ldomide
1 +XWiki.rominabaila
Content
... ... @@ -1,34 +7,29 @@
1 -Source code: [[https:~~/~~/github.com/the-virtual-brain/tvb-widgets>>url:https://github.com/the-virtual-brain/tvb-widgets]]
2 -
3 -This is part of a Pypi release: [[https:~~/~~/pypi.org/project/tvb-widgets/>>url:https://pypi.org/project/tvb-widgets/]]
4 -
5 -//**tvb-widgets**// is also already installed in the official image released for EBRAINS lab, where you can test it directly.
6 -
7 7  == Purpose ==
8 8  
9 -It is a Jupyter Widget intended for the visualization of brain signals represented as time series.
3 +It is a Jupyter widget intended for the visualization of brain signals represented as time series.
10 10  
5 +
11 11  == Inputs ==
12 12  
13 -Time series can be given as inputs in two forms:
8 +It supports time series inputs of two types:
14 14  
15 15  * TVB TimeSeries datatype
16 16  * Numpy arrays
17 17  
18 -This widget supports 2D, 3D, and 4D arrays. In all three cases, there is a fixed shape that the TimeSeries widget expects:
13 +The widget supports 2-, 3-, and 4-dimensional arrays. In all three cases, there is a fixed shape that the TimeSeries widget expects:
19 19  
20 20  * for **2D**: (no_timepoints, no_channels)
21 21  * for **3D**: (no_timepoints, state_variable/mode, no_channels)
22 22  * for **4D**: (no_timepoints, state_variable, no_channels, mode)
23 23  
24 -~* Note that the TVB TimeSeries datatype is always 4D and already has the expected shape.
19 +~* Note that the TVB TimeSeries datatype is always is always 4D and already has the expected shape.
25 25  
21 +
26 26  == Requirements and installation ==
27 27  
28 -Before installing the tvb-widgets library containing the TimeSeries widget, the following python libraries and Jupyter extensions should be installed:
24 +Before installing the tvb-widgets library containing the TimeSeries widget, the following python libraries and  Jupyter Notebook extensions should be installed:
29 29  
30 30  * **Libraries:**
31 -** [[mne>>https://mne.tools/0.24/install/index.html]] version 0.24
32 32  ** [[ipympl>>https://github.com/matplotlib/ipympl#installation]]
33 33  * (((
34 34  **Extensions:**
... ... @@ -47,39 +47,3 @@
47 47  (((
48 48  pip install tvb-widgets
49 49  )))
50 -
51 -== API usage ==
52 -
53 -First, the correct matplotlib backend must be set, which enables the interaction with the TimeSeries widget, by running the following command:
54 -
55 -(% class="box" %)
56 -(((
57 -%matplotlib widget
58 -)))
59 -
60 - Then, the **TimeSeriesWidget** (from the tvb-widgets API) and the **//display//** function should be imported:
61 -
62 -(% class="box" %)
63 -(((
64 -from tvbwidgets.api import TimeSeriesWidget
65 -from IPython.core.display_functions import display
66 -)))
67 -
68 -Assuming that the user has already created or imported a valid input, this is how the widget can be initialized and how an input can be assigned to it, using the //**add_datatype** //method (example below assumes that **//tsr//  **is a TVB TimeSeries datatype):
69 -
70 -(% class="box" %)
71 -(((
72 -tsw = TimeSeriesWidget()
73 -tsw.add_datatype(tsr)
74 -)))
75 -
76 -Finally, to display and interact with the TimeSeries widget, the **//get_widget//**// //method is used inside the //**display **//function:
77 -
78 -(% class="box" %)
79 -(((
80 -display(tsw)
81 -)))
82 -
83 -{{html}}
84 -<iframe src="https://drive.google.com/file/d/1g4ryY1VIFMUD14Mb6Dq_KVb0b2_XU4VX/preview" width="840" height="480" allow="autoplay"></iframe>
85 -{{/html}}
Public

TVB Widgets