Widget Connectivity
Source code: https://github.com/the-virtual-brain/tvb-widgets
This is part of a Pypi release: https://pypi.org/project/tvb-widgets/
tvb-widgets is also already installed in the official image released for EBRAINS lab, where you can test it directly.
Purpose
Jupyter lab widgets for visualizing or do operations on a connectivity
1. ConnectivityWidget
Visualization:
- in 2D can visualize weights or tracts matrixes;
- in 3D can visualize regions and their respective edges
- to show/hide the Connectivity centers/edges, access the controls available in the upper-right corner:
Operations:
- remove selected nodes from a connectivity, results in a new connectivity containing only the nodes that were not selected;
- remove unselected nodes from a connectivity, results in a new connectivity containing only the selected nodes;
- remove unselected edges, results in a new connectivity with the same number of regions but without the edges of unselected regions;
- remove selected edges, results in a new connectivity with the same number of regions but without the edges of selected regions.
Usage:
- after instantiating the widget it allows export of the currently selected connectivity:
from tvb.datatypes.connectivity import Connectivity
conn = Connectivity.from_file() # defaults to connectivy_76.zip
conn.configure()
wid = ConnectivityWidget(conn, default_active_tab='viewers') # default_active_tab can be any value between 'viewers'|'operations'|'both'
display(wid)
# ....do some operations...
# replace None in the method below with the gid of the connectivity you wish to export
# if no gid is provided it will export the connectivity currently viewed
new_connectivity = wid.get_connectivity(gid=None)
new_connectivity
2. SpaceTimeVisualizerWidget
- this is a 3D representation of the delayed-connectivity structure
- the space-time visualizer disaggregate the weights matrix and each slice corresponds to connections that fall into a particular distance (or delay) range. The first slice is the complete weights matrix. Click on any of the subsequent slices to see the corresponding 2D matrix plot. Also, choose the conduction speed and ranges you are interested to explore and the plot will update instantly.
- clicking on a connectivity slice, brings that particular slice in the center an you can visualize it in 2D mode
- in the tab called Plots Overview you get a 2D summary of all the current slices