Talk Connectome Viewer - Visualization and Analysis of Connectome Data with Python

Presented by Stephan Gerhard in Scientific track 2010 on 2010/07/11 from 10:30 to 10:45 in room Dussane

The emerging field of connectomics is concerned with the mapping of brain networks at different spatial and temporal scales. Originally coined to describe structural brain networks only [1], recently the notion of a connectome is also used to refer to functional brain networks [2]. To grow in an understanding of complex brain processes, it is indispensable to integrate structural and functional data from various spatial and temporal scales.

Consequently, large datasets of multi-modal data must be aquired, processed, analysed and visualized [3]. The Connectome Viewer provides a Python based framework for the enhanced analysis and visualization of such data in network or surface representation. It employs the Connectome File Format: a container format (zip) for archiving and compression of raw and processed multi-modal data, including metadata. To maximize interoperability, open community-driven formats for network-based, surface-based, and volume-based data have been employed. Therefore, flexible organization and sharing of single-subject and large group-based datasets becomes possible.

A large number of features allow user-friendly interaction with the data. Interactions with the visualized data comprise node selection, edge attribute selection, thresholding, camera synchronized viewing and network-surface representation toggling.

The integrated IPython shell allows full-blown scripting. All visualization parameters above can be manipulated and image sequences can be generated. All Connectome data sources are exposed. Packages can be imported. Therefore, data can be interactively manipulated, and custom quantitative analysis can be performed . E.g. to characterize brain connectivity, network analysis methods are provided, ready to be applied [4] . All results derived from quantitative analysis can easily be plotted.

The Plugin Architecture allows extension of applications to custom needs and sharing of their functionality in the community. Already provided have been plugins for database access, as well as diffusion MRI and LORETA [5] EEG functional connectivity import and analysis.

Standing on the shoulder of giants, the Connectome Viewer builds upon many scientific computing and application building libraries:

  • Enthought Envisage Application Framework - Building extensible plugin applications [6]
  • Mayavi2 - 3D Scientific Data Visualization [7]
  • Traits - Type definition of Python object attributes with additional characteristics [8]
  • NetworkX - Creation, manipulation, and study of the structure, dynamics, and functions of complex networks [9]
  • SciPy/NumPy - Scientific computing basic package, includes linear algebra, Fourier transform, random number capabilities [10]
  • Neuroimaging in Python - An environment for the analysis of structural and functional neuroimaging data. NiPype for the creation of processing pipelines, DiPy for Diffusion MRI analysis [11]
  • Brain Connectivity Toolbox - Provides a set of established network analysis measures [12]
  • Matplotlib - 2D Plotting library for publication quality figures, fully scriptable [13]

Downloads, Screencasts

The ConnectomeViewer is distributed under the open-source GNU Public License and is available from

Screencasts demonstrations are available at


Financial support from Department of Radiology, University Hospital Center and University of Lausanne (CHUV-UNIL), and Signal Processing Lab 5, EPFL, Switzerland and Swiss National Science Foundation.