Chapter 1
A node is one step
Every step is a card. Find Neurons runs one query: it matches a type
pattern against a dataset. Here we ask for traced lobula columnar cells with
^LC\d+$.
Inputs are on the left, outputs on the right, parameters in between, and the last result
along the bottom. ▶ in the header runs this node and whatever is
upstream of it.
The stripe down the left edge shows the run state. It is grey here because the
Dataset input is empty, so there is nothing to run yet.
Chapter 2
Sockets and types
Each socket has a type that says what it accepts. If you try to connect two sockets that
don't fit, Coda won't let you draw the link.
Dataset — a connectome at a version
Neurons — a table guaranteed to carry neuronId
Table — any rows and columns
Matrix — rows × columns of numbers
Geometries — skeletons, meshes and point clouds, drawn in 3D
Transform — a mapping between template spaces
Layers — extra neuroglancer layers to draw alongside
The colour tells you the general kind of data and the shape tells you the type within it.
The same shape can appear in two colours: a skeleton and a table of Neurons are both
filled circles, Matrix and Transform are both diamonds. One colour can also have several
shapes: the three marks above are all Geometries.
Chapter 3
Execution model
Each node has a cost. Cheap ones such as Filter Table,
Sort or Group By re-run automatically after you
edit them. Expensive nodes, e.g. ones that query a backend, go stale instead.
Run (⇧R) executes everything stale, in dependency order.
▶ on the card itself executes only that node and what is upstream of it.
Either way, a gold ring around the card shows its progress.
Auto-run means every edit re-runs the whole graph, expensive nodes included.
It is on by default, but you can turn it off to control when an expensive workflow runs.
Clear removes all results so you can start over. It does not remove any nodes or wiring.
Also worth trying if a node is stuck, e.g. in an error.
Chapter 4
A node for every question
Coda provides nodes for complex operations such as Find Neurons,
Connectivity, Paths or Skeletons, and
primitives for basic data processing steps, e.g. Filter Table, Group By,
Join, Pivot and so on.
Use the "+" button to add new nodes, or press Tab to open the node browser.
The browser has a search box and category chips, and each row shows the node's
port signature, i.e. what it takes and what it returns.
Add a nodeTab
⚲
netw
3 of 41
AllDatasetQueryTransformAnalysisOutput
Build NetworkTable → Network · cheap
Network ViewerNetwork + Layout → Network, Selected
ConnectivityDataset + Neurons → Table · needs Run
Space opens a compact palette with the same nodes plus every command. If you
drag a wire into empty canvas, the list only shows nodes that accept it, and the node you
pick arrives already wired up.
Chapter 5
Viewers
Bar Chart draws the table and also passes the same table on, so
you can put a viewer in the middle of a chain. Table,
Heatmap, Scatter Plot, Network Viewer,
3D View and Neuroglancer all work this way.
Several viewers also let you select things. Lasso points in Scatter Plot or
click nodes in Network Viewer, and the picked rows come out of a
Selected output that you can wire onward like any other.
Scatter Plotpre × post · colour by class
A selection is stored like any other parameter: it is saved with the workflow, and
changing it counts as an edit like any other.
Chapter 6
Save it, send it
A workflow is a simple JSON file that captures every step, every parameter.
Save ▸ Download .coda.json writes it to a file.
Save ▸ Save in this browser stores it in your browser’s
local storage, so you can close the tab and come back later. Share workflow
turns it into a link you can send to someone.
A workflow file never contains data, results or your credentials! Whoever opens it gets this pipeline
exactly as you left it, presses Run, and can move a threshold to see what changes.