Worm Circuitry Explorer

An interactive connectome explorer for the nematode worm C. elegans

Explore Now!

The Worm

Caenorhabditis elegans (or simply C. elegans) is a nematode worm of particular interest to many researchers as it was the first multicellular organism to have its whole genome sequenced, and at least for now, remains the only organism whose connectome (neuronal wiring diagram) has been completed in its entirety.

The Worm Circuitry Explorer is a tool that allows visual and interactive exploration of this connectome. In its current form one of its purposes is to give researchers interested in modelling a specific worm behaviour the means to easily extract subcircuits that may underlie the behaviour in question.

Data sources

The adult C. elegans hermaphrodite worm has 302 neurons. The majority of these (282 neurons) belong to the large and densely interconnected somatic nervous system, while a smaller number (20 neurons) makes up the pharyngeal nervous system. In its present form the Worm Circuitry Explorer covers the connectivity between the 279 somatic neurons whose interconnections are best established.

The connectome data the app is based on was first discussed by Chen et al. (2006) 1, a full analysis of which can be found in a more recent publication by Varshney et al. (2011) 2. This data is made available on the connectivity pages of the Worm Atlas 3, where further information about its origin can also be found.

The primary data is supplemented with two-dimensional position information from Choe et al., 2004 4; information about neuron groups made available in the Worm Web project 5; and hyperlinks to corresponding pages in the WormAtlas 3.


The preprocessed and joined connectome is maintained in Neo4j, a graph database in which nodes and edges are stored along with their meta-information. Neo4j offers a powerful query language (cypher) that is used here to find subcircuits of the full connectome. An example use-case is the identification of the neural subcircuit that connects a set of sensory neurons to a set of motor neurons. Using additional constraints such as the minimum number of synapses per connection, or a maximum path length, the app translates this goal into a cypher query and returns the corresponding circuit as json data ready to be visualized.


The network visualization of the connectome is done entirely with d3.js, a client-side javascript framework for producing interactive visualizations in the browser. Since with d3 all visualized elements are present in the DOM this allows for intuitive interaction with the network. Each neuron can be selected to display detailed properties, highlighted to show its 1st degree neighbourhood, and manually pinned to a fixed position. By default the network is displayed using a modified force-layout, in which sensory, inter- and motor neurons are adjusted to roughly move into different layers. Further information regarding usage is provided in the app itself.


  1. Nikhil Bhatla, WormWeb.org
  2. Chen, Hall, and Chklovskii (2006). Wiring optimization can relate neuronal structrure and function. PNAS 103: 4723-4728 (doi:10.1073/pnas.0506806103).
  3. Choe Y, McCormick BH and Koh W (2004). Network connectivity analysis on the temporally augmented C. elegans web: A pilot study. Society of Neuroscience Abstracts 30:921.9. Dynamic Connectime Lab data.
  4. Varshney, Chen, Paniaqua, Hall and Chklovskii (2011). Structural properties of the C. elegans neuronal network. PLoS Comput. Biol. 3:7:e1001066 (doi:10.1371/journal.pcbi.1001066).
  5. WormAtlas, Altun, Z.F., Herndon, L.A., Crocker, C., Lints, R. and Hall, D.H. (ed.s) 2002-2015. http://www.wormatlas.org