1 - Overview

An overiew video showing some examples of what you can do with Virtual Fly Brain

2 - Getting Started

How to use the Virtual Fly Brain 3D browser

Below are a few overview pages to help you get started using VFB:

2.1 - Starting to explore VFB

Text search and query tools and how to explore the 3D images.

VFB integrates data curated from the literature with image data from many bulk sources. The search system allows you to search for neurons and neuroanatomical structures using almost any name found in the literature. The query system can identify neurons innervating any specified neuropil or fasciculating with any specified tract. It also allows queries for genes, transgenes and phenotypes expressed in any brain region or neuron. Search and query results combine referenced textual descriptions with 3D images and links to originating data sources. VFB features tens of thousands of 3D images of neurons, clones and expression patterns, registered to standard template brains. Any combination of these images can be viewed together. A BLAST-type query system (NBLAST) allows you to find similar neurons and drivers starting from a registered neuron.

Search for the item you’re interested in

Hover to explore brain regions in the Stack Viewer

Query for related terms and images

Virtual Fly Brain (VFB) Overview

2.2 - This is the Slice Viewer tab

The Slice Viewer displays single slices of the template, showing all selected painted anatomy, neurons and expression patterns

Hover to explore, click to list or shift + click to add painted anatomy

Use the arrow icons or scroll with the mouse to move through the stack

Home resets your view

Use the zoom icons or pinch gesture to zoom

Toggles through orthogonal views

Toggles the slice position on the 3D Viewer on/off

Virtual Fly Brain (VFB) Slice Viewer

2.3 - This is the 3D Viewer tab

The 3D Viewer displays 3D models of the template, showing all selected painted anatomy, neurons and expression patterns

Point and click to select neurons/expression

Click and drag with the mouse or use the directional icons to rotate/move

Use the zoom icons or scroll with the mouse to zoom in/out

Home resets your view

The camera icon starts/stops a rotation animation of the scene

The sphere icon toggles wireframes on/off

Virtual Fly Brain (VFB) 3D Viewer

2.4 - This is the Term Info tab

Term Info displays information on the currently selected painted anatomy region, neuron, expression pattern or non-image term definitions

Click on thumbnails to add that image to the viewer

Click on terms to select them

Click on download items to begin downloading

Run term related queries

Virtual Fly Brain (VFB) 3D Viewer

2.5 - This is the Term Context tab

Term Context displays grapical information on the currently selected term’s location or classification

Home resets your view

Use the zoom icons or scroll with the mouse to zoom in/out

Click to refresh to the current focus term

Select either the location or the classification for the current term

Virtual Fly Brain (VFB) 3D Viewer

2.6 - This is the Circuit Browser tab

The Circuit Browser allows you to find the strongest paths from one neuron (the source neuron) to another (the target neuron).

The ‘strongest’ paths are the shortest/highest weighted paths. Paths are arranged from the ‘strongest’ at the bottom to the ‘weakest’ at the top. A detailed explanation for the algorithm used to determine path strengths can be found here.

Search for the source neuron to start from (Note: query is directional)

Search for the target neuron

Maximum number of paths to return (only the ‘strongest’ paths will be returned)

A minimum weight for the synapse count of each connection can be applied, paths containing individual connections below this minimum will not be returned

Virtual Fly Brain (VFB) 3D Viewer

2.7 - How to Interpret VFB Thumbnails

VFB (Virtual Fly Brain) thumbnails are color depth maximum projection images that allow users to visualize the distribution of intensity values across different depths in a 3D image stack.

How to Interpret VFB Thumbnails

Here is a guide on how to interpret VFB thumbnails:

  • Each pixel in a VFB thumbnail corresponds to a specific depth in the image stack.
  • Brighter or more intense colors indicate higher intensity values at that depth.
  • The color bar on the right side of the image provides additional context about the mapping between color and depth.
  • Each color in the color bar corresponds to a specific depth in the image stack, and the intensity of the color represents the maximum intensity value at that depth.
  • Users can use the color bar to identify the depth of the signal and gain insights into the distribution of intensity values across different depths in the image stack.

Example VFB template thumbnail

  • Note the colour bar and hence the signal in the image uses nealy the whole of the available (Z) stack space.

Example VFB neuron thumbnail

  • Note the colour bar and hence the signal in the image uses less of the available (Z) stack space.

Example VFB flat neuron thumbnail

  • Note the colour bar and hence the signal in the image uses much less of the available (Z) stack space.

In summary, VFB thumbnails provide a simplified way to visualize complex 3D image data. Each pixel’s color and intensity represent the maximum intensity value at a specific depth, and the color bar provides additional context about the mapping between color and depth. By interpreting the colors and using the color bar, users can gain insights into the distribution of intensity values across the image stack.

2.8 - Similarity Score Queries Guide

This guide provides step-by-step instructions on how to use the similarity score queries on VirtualFlyBrain.org. These queries allow users to find neurons or expression patterns that are morphologically similar to a selected neuron or expression pattern.

Scores Availability

The similarity scores are calculated using NBLAST or other third-party scores (e.g. NeuronBridge). Only queries with above-threshold scores will appear in the ‘Find similar…’ menu.

Step 1: Select a Neuron or Expression Pattern

Navigate to the VFB browser and select a neuron or expression pattern of interest so it’s information is shown in the Term Info panel

Step 2: Open the ‘Find similar…’ Menu under the ‘Query For’ section

Under the ‘Query For’ section, locate the ‘Find similar…’ expandable menu. This menu will only appear if an above-threshold score is available for the selected neuron or expression pattern.

Step 3: Run a Similarity Score Query

Inside the ‘Find similar…’ menu, you will find queries to find morphologically similar neurons or expression patterns. Select a query to run it. The results will display neurons or expression patterns that are similar to your selected neuron or expression pattern.

Note: We recalculate these scores shortly after new data is added, so new matches may appear if you check back a few months later.

2.9 - Bulk Image Download

This guide provides step-by-step instructions on how to use the bulk download tool on VirtualFlyBrain.org. The tool allows users to download multiple files at once, saving time and effort compared to downloading each file individually. The types of data available for download include OBJ, SWC, NRRD, and References. Users can also select specific variables related to their chosen data type. The downloaded data is packaged into a zip file for easy access and organization.

Using the Bulk Image Download Tool

Follow these steps to download multiple files from VirtualFlyBrain using the bulk download tool:

Step 1: Open the Images

Navigate to the VFB Browser and open all the images you are interested in downloading. You can do this by searching for specific images and opening their respective pages.

Step 2: Open the Bulk Download Tool

Once you have all the images open, locate the bulk download icon in the top right. Click on this icon to open the bulk download tool.

Step 3: Select the Data Type

In the bulk download tool, select the type of data you want to download. The options are OBJ, SWC, NRRD, and References.

Step 4: Select the Variables

If applicable, select specific variables related to the data type you have chosen.

Step 5: Download the Data

After making your selections, click the ‘Download’ button to start the download. The data will be downloaded in a zip file named “VFB Files.zip”.

Step 6: Unzip the File

Once the download is complete, locate the zip file in your downloads folder and unzip it to access the data.

Step 7: Open the Data

Finally, open the data in your chosen software. For example, if you chose OBJ, you could open the data in a 3D modeling program.

Note: If something goes wrong during the download, an error message will be displayed and you will be prompted to try again. If no entries are found for the selected types and variables, a message will be displayed to inform you.

2.10 - Single cell RNAseq data

Single cell RNAseq data on VFB.

Finding gene expression data on VFB

Finding cell type clusters

Cell types with available scRNAseq data can be identified using the ‘Has scRNAseq data filter’ when searching.

scRNAseq filtered search

Clusters for a cell type of interest can be found via the ‘Single cell transcriptomics data for…’ query.

scRNAseq cluster query

Gene expression data

After selecting a cluster, gene expression can be retrieved via the ‘Genes expressed in…’ query.

gene expression filtered to GPCRs

Expression level is the mean counts per million reads of all cells in the cell type cluster that express the given gene. Expression extent is the proportion of cells within the cluster that express the given gene. VFB only shows genes that are expressed in at least 20% of cells in the cluster (Extent > 0.2).

Gene semantic tags

We add semantic tags to genes to allow quick searching and filtering of results (‘Function’ column of gene expression data). These tags are based on FlyBase Gene Group membership and GO annotations, which are all sourced from FlyBase. A full list of gene tags with their associated Gene group and GO terms can be found here.

API

Data can also be retrieved using VFB_connect.

Tutorial

Documentation

Data sources and processing

  1. Raw scRNAseq data is ingested by the EBI Single Cell Expression Atlas (SCEA). Where possible, cells are linked to cell types from the Drosophila Anatomy Ontology based on author annotations. Data is reprocessed, filtered and reclustered.
  2. FlyBase takes data from EBI, keeping only cells that are linked to ontology terms and generating summary expression data for each cell type (cluster).
  3. VFB takes control/wild type expression data from FlyBase for datasets where at least one nervous system cell type is present and filter out any genes expressed in less than 20% of cells per cluster.

Database schema

A simplified schema showing how scRNAseq data is stored in the VFB Neo4j database is shown below:

scRNAseq schema

Cell types are classes from the Drosophila Anatomy Ontology and are also linked to several other types of data in VFB, such as images, connectomics and driver expression information.

3 - Examples

Examples of usecases for VFB or different data types that are available.

3.1 - Circuit diagram of the mushroom body

Schematic representation of the 21 cell types of MBONs in the lobes and one cell type of MBON in the calyx based on the data presented in the accompanying manuscript (Aso et al., 2014): circles, cell bodies; semicircles, dendrites; arrowheads, axon terminals; color-coding is by neurotransmitter as in panel (A) Three MBON cell-types (GABAergic MBON-γ1pedc>α/β, glutamatergic MBON-γ4>γ1γ2 and MBON-β1>α; marked as 11, 5 and 6 respectively) send axons into the MB lobes. Axons of MBON-γ4>γ1γ2 project from γ4 to γ1 and γ2, and thus have the potential to affect activity of MBON-γ1pedc>α/β. From γ1, the axon of MBON-γ1pedc>α/β projects to compartments in the α/β lobes including β1, where dendrites of MBON-β1>α arborize. Axons of both MBON-γ1pedc>α/β and MBON-β1>α project to the compartments in the α lobe. Therefore activity of MBONs in the α lobe can be regulated by these layered inter-compartmental connections. These three types of MBONs (11, 5 and 6) do not project back to their own dendrites. Therefore, the organization of the MBONs can be viewed as forming a multilayered feed-forward network (Aso et al., 2014). MBONs project to a small number of brain areas: the crepine (CRE; a region surrounding the horizontal/medial lobes), the superior medial protocerebrum (SMP), superior intermediate protocerebrum (SIP) and superior lateral protocerebrum (SLP) and the lateral horn (LH). The size of the arrowhead reflects the relative number of termini in each area. The MBONs are numbered and listed in Table 1. See the accompanying manuscript (Aso et al., 2014) and Table 1 for details.

https://doi.org/10.7554/eLife.04580.003

4 - Concepts

Details of concepts or terms used in Virtual Fly Brain

4.1 - Transgene Expression

These techniques work by driving the expression of a target transgenes.

Here we present details of how single transgenes are curated

Transgene expression into FlyBase and Virtual Fly Brain (VFB)

Expression of single transgenes are curated from the published literature into FlyBase as expression statements. Virtual Fly Brain (VFB) combines hosted images with neuroanatomical, expression and genetic data from FlyBase in Neo4j and maps them onto Central Nervious System (CNS) templates where they can be queried using Web Ontology Language (OWL) and Solr.

4.2 - Split Expression

This techniques works by driving the expression of target transgenes at the intersection between the expression patterns of two hemi-driver transgenes.

Thousands of hemi-driver transgenes are now available, meaning that millions of combinations/splits are possible, each targeting some precise subset of the 10s-100s of thousands of neurons in a fly Central Nervous System (CNS). Finding the right combination for an experiment is a serious bottleneck for researchers.

FlyBase & Virtual Fly Brain (VFB) solve this problem by curating information and images recording where expression is driven by combinations of hemi-drivers. Each combination gets a standard name on VFB reflecting the names of the component hemidrivers (see figure below) and is also associated with any short names for the combination used in the literature (e.g. “P{VT017411-GAL4.DBD} ∩ P{VT019018-p65.AD} expression pattern” has_exact_synonym: SS02256")

This techniques work by driving the expression of target transgenes at the intersection between the expression patterns of two hemi-driver transgenes.This techniques work by driving the expression of target transgenes at the intersection between the expression patterns of two hemi-driver transgenes.

We use programmatic methods to generate expression statements for hemi-driver combinations with FlyLight image data hosted by VFB. Combinations are validated against a local copy of the FlyLight dataset and a structured user readable comment is generated as part of the expression statement. These hyperlink to the partner hemi-driver in FlyBase, contain the strain designation (where available) and can be automatically parsed by Virtual Fly Brain to attach expression and genetic data to a node representing the intersection.

split expression shown in Virtual Fly Brain (VFB)

4.3 - Templates

Canonical templates not only allow for spatial alignment of image data but also are often painted to make a reference atlas of anatomical regions.

Many central nervious system (CNS) templates exist for Drosophila, below we provide a summary of those used in VFB.

Central Nervious System from Janelia Research Campus JRC2018

VFB displays data aligned to either the JRC 2018 unisex brain template for cephalic or JRC 2018 unisex Ventral Nerve Cord (VNC) for non-cephalic data.

Bogovic et al., “An unbiased template of the Drosophila brain and ventral nerve cord”

We recomend downloading templates from the VFB browser or the links below however the original files are available from Janelia: JRC 2018 Brain templates

Adult Brain from Janelia Research Campus/VFB (JFRC2010/JFRC2)

Superceeded by JRC2018

Template brain created by Arnim Jenett (Janelia Research Campus), Kazunori Shinomiya and Kei Ito (Tokyo University) from a staining with the neuropil marker nc82.

The voxel size is 0.62x0.62x0.62 micron.

The files are available here.

Painted domains/regions in the available templates

Template Painted Domains
adult brain template JFRC2 saddle, epaulette, superior posterior slope, prow, inferior posterior slope, lateral accessory lobe, bulb, lobula, superior lateral protocerebrum, adult antennal lobe, wedge, anterior optic tubercle, medulla, SIP, accessory medulla, crepine, gall, anterior ventrolateral protocerebrum, nodulus, gorget, ellipsoid body, lobula plate, antennal mechanosensory and motor center, inferior bridge, posterior lateral protocerebrum, fan-shaped body, posterior ventrolateral protocerebrum, superior medial protocerebrum, vest, antler, superior clamp, inferior clamp, flange, PB, cantle, posterior slope, clamp, lobula complex, adult central complex, adult mushroom body, adult cerebral ganglion, adult subesophageal zone, optic lobe, lateral horn, ventral complex, medial lobe of adult mushroom body, central body, lobe system of adult mushroom body, ventrolateral neuropils, ventromedial neuropils, ventrolateral protocerebrum, inferior neuropils, superior neuropils, adult gnathal ganglion, lateral complex, calyx of adult mushroom body, pedunculus of adult mushroom body, vertical lobe of adult mushroom body
adult brain template Ito2014 nodulus, lobula, accessory medulla, lobula plate, inferior clamp, antennal mechanosensory and motor center, cantle, bulb, superior lateral protocerebrum, superior intermediate protocerebrum, superior medial protocerebrum, inferior bridge, ellipsoid body, adult antennal lobe, medulla, fan-shaped body, lateral horn, lateral accessory lobe, vest, protocerebral bridge, saddle, wedge commissure, superior fiber system, superior posterior lateral protocerebrum commissure, superior antennal lobe commissure, superior ellipsoid commissure, labro_frontal_nerve - painted domain, BrainName pu, lateral cerebro-cervical fascicle, lateral equatorial fascicle, lateral accessory lobe commissure, lateral antennal lobe tract, inferior antennal lobe commissure, inferior fiber system, pyriform fascicle, horizontal ventrolateral protocerebral fascicle, posterior lateral fascicle, superior AMMC commissure, mediolateral antennal lobe tract, posterior posteriolateral protocerebral commissure, medial equatorial fascicle, posterior cerebro-cervical fascicle, vertical ventrolateral protocerebral fascicle, median bundle, wedge, gorget, anterior ventrolateral protocerebrum, posterior lateral protocerebrum, calyx of adult mushroom body, horizontal ventrolateral protocerebral fascicle, anterior optic tubercle, superior posterior slope, anterior cerebro-cervical fascicle, antenno-subesophageal tract, anterior superior lateral protocerebrum fascicle, anterior dorsal commissure, giant fiber neuron, medial cerebro-cervical fascicle, prow, adult gnathal ganglion, vertical lobe of adult mushroom body, pedunculus of adult mushroom body, crepine, antler, superior clamp, mushroom body accessory calyx, flange, medial lobe of adult mushroom body, posterior optic commissure, epaulette, medial antennal lobe tract, inferior posterior slope, posterior ventrolateral protocerebrum, great commissure, adult maxillary nerve, anterior optic tract
adult VNS template - Court2018 tectulum, prothoracic leg nerve, accessory prothoracic nerve, cervical connective, abdominal segment 3 nerve, abdominal segment 4 nerve, posterior dorsal mesothoracic nerve, accessory metathoracic nerve, adult accessory mesothoracic neuromere, metathoracic leg nerve, adult metathoracic neuromere, adult mesothoracic neuromere, dorsal prothoracic nerve, adult prothoracic neuromere, anterior dorsal mesothoracic nerve, abdominal nerve trunk, adult brain cell body rind, abdominal segment 2 nerve, ventral prothoracic nerve, adult abdominal neuromere, accessory mesothoracic nerve, dorsal metathoracic nerve, mesothoracic leg nerve
L3 CNS template - Wood2018 right dorsomedial neuropil of maxillary segment, left central subdivision of ventral nerve cord, right centromedial subdivision of ventral nerve cord, left ventromedial neuropil of tritocerebrum, right central neuropil of A9, right ventral neuropil of A9, right dorsomedial neuropil of A4, lower toe, right centromedial neuropil of A8, right centromedial neuropil of A2, right central neuropil of labial segment, left ventral neuropil of A9, right dorsomedial neuropil of A7, left ventromedial neuropil of maxillary segment, ventrolateral protocerebrum, left ventromedial neuropil of A8, left dorsomedial neuropil of T3, right central neuropil of T3, right central neuropil of mandibular segment, left central neuropil of A3, right T2 leg neuropil, right central neuropil of tritocerebrum, right central neuropil of A3, right central subdivision of ventral nerve cord, left dorsomedial neuropil of A2, left central neuropil of T1, right central neuropil of A4, left central neuropil of A5, left dorsomedial neuropil of T2, right centromedial neuropil of labial segment, right centromedial neuropil of mandibular segment, right centromedial neuropil of A3, right centromedial neuropil of T2, left central neuropil of A8, right dorsomedial neuropil of A1, right dorsomedial neuropil of labial segment, left dorsomedial neuropil of A7, right central neuropil of A6, right central neuropil of maxillary segment, protocerebral bridge - primordial, left central neuropil of mandibular segment, left dorsomedial neuropil of A4, left dorsolateral neuropil of A8, left central neuropil of A4, left ventrolateral neuropil of T3, right central neuropil of A7, right central neuropil of A8, right central neuropil of A2, left dorsomedial neuropil of A3, left ventrolateral neuropil of A4, left ventrolateral neuropil of A8, left dorsomedial neuropil of A5, left central neuropil of T2, left central neuropil of A1, left central neuropil of T3, spur of mushroom body, left dorsomedial neuropil of A6, right T1 leg neuropil, left dorsomedial neuropil of maxillary segment, right dorsolateral neuropil of maxillary segment, left dorsomedial neuropil of T1, left dorsomedial neuropil of labial segment, right dorsolateral neuropil of T3, left central neuropil of labial segment, right dorsolateral neuropil of labial segment, left T3 leg neuropil, crepine, right ventrolateral neuropil of A6, right ventrolateral neuropil of maxillary segment, right dorsolateral neuropil of A2, left dorsolateral neuropil of A5, left T1 leg neuropil, left dorsolateral subdivision of ventral nerve cord, left ventrolateral neuropil of maxillary segment, left dorsolateral neuropil of A1, right central neuropil of T1, posterior ventromedial cerebrum, left ventrolateral neuropil of mandibular segment, left dorsomedial neuropil of A1, left dorsomedial neuropil of A8, left ventrolateral neuropil of A2, left ventrolateral neuropil of T1, left centromedial neuropil of A6, medial lobe of mushroom body, left ventromedial neuropil of labial segment, right dorsal neuropil of A9, right dorsolateral neuropil of A8, left ventrolateral neuropil of T2, left ventrolateral subdivision of ventral nerve cord, left dorsomedial neuropil of mandibular segment, posterior inferior protocerebrum, left ventrolateral neuropil of A3, left dorsolateral neuropil of T1, left ventrolateral neuropil of A6, left ventrolateral neuropil of labial segment, left dorsolateral neuropil of A4, right ventrolateral neuropil of mandibular segment, right ventrolateral neuropil of T3, left centrolateral neuropil of T1, left centrolateral neuropil of A8, left dorsolateral neuropil of A6, left dorsolateral neuropil of T2, left dorsolateral neuropil of maxillary segment, right ventrolateral neuropil of A3, nodulus - primordial, left centrolateral neuropil of A2, right dorsolateral neuropil of T1, right dorsolateral neuropil of A5, right dorsolateral neuropil of A3, right dorsolateral neuropil of A7, right dorsolateral subdivision of ventral nerve cord, left ventrolateral neuropil of A1, left ventrolateral neuropil of A7, left dorsomedial subdivision of ventral nerve cord, left ventrolateral neuropil of A5, left dorsolateral neuropil of T3, right ventrolateral neuropil of A7, right ventrolateral neuropil of A5, right ventrolateral neuropil of A4, right ventrolateral neuropil of A2, posterior lateral protocerebrum, left dorsolateral neuropil of labial segment, right centrolateral neuropil of labial segment, right centrolateral neuropil of A4, right centrolateral neuropil of A1, left T2 leg neuropil, left centrolateral neuropil of A3, left centrolateral neuropil of A4, right centrolateral neuropil of A5, fan-shaped body - primordial, right ventrolateral neuropil of labial segment, right ventrolateral neuropil of T2, left centrolateral neuropil of T2, left centrolateral subdivision of ventral nerve cord, left centrolateral neuropil of labial segment, left centrolateral neuropil of A6, right dorsolateral neuropil of T2, right dorsolateral neuropil of A1, right dorsolateral neuropil of A4, left dorsal neuropil of A9, right dorsolateral neuropil of A6, left dorsolateral neuropil of A7, anterior ventromedial cerebrum](http://virtualflybrain.org/reports/VFB_00050332), ventromedial cerebrum, left centrolateral neuropil of T3, posterior superior medial protocerebrum, right centrolateral neuropil of A2, left ventromedial neuropil of A5, left centrolateral neuropil of A5, left dorsomedial neuropil of tritocerebrum, left central neuropil of A9, superior intermediate protocerebrum, mushroom body, anterior superior medial protocerebrum, right centrolateral neuropil of T1, right centrolateral neuropil of A3, right centrolateral neuropil of A6, right centrolateral neuropil of T3, left central neuropil of tritocerebrum, pedunculus of mushroom body, right centrolateral neuropil of maxillary segment, right centrolateral neuropil of A8, right centrolateral neuropil of A7, right centrolateral neuropil of T2, left centrolateral neuropil of A7, left dorsolateral neuropil of A3, right ventrolateral subdivision of ventral nerve cord, vertical lobe of mushroom body, left centromedial neuropil of A7, left ventromedial neuropil of A3, left dorsolateral neuropil of A2, lateral accessory lobe, right ventrolateral neuropil of T1, right ventrolateral neuropil of A1, right T3 leg neuropil, right ventrolateral neuropil of A8, right centromedial neuropil of A5, calyx of mushroom body, left ventromedial subdivision of ventral nerve cord, left ventromedial neuropil of mandibular segment, left centromedial neuropil of A2, left centromedial neuropil of A8, left centromedial neuropil of T1, right centromedial neuropil of tritocerebrum, right ventromedial neuropil of mandibular segment, antennal lobe, superior lateral protocerebrum, right ventromedial neuropil of A8, right ventromedial neuropil of A6, right ventromedial neuropil of A2, left ventrolateral neuropil of T1, left ventromedial neuropil of A4, left ventromedial neuropil of A6, right ventromedial neuropil of A4, right ventromedial neuropil of A5, right ventromedial neuropil of maxillary segment, right ventrolateral neuropil of T3, lateral appendix of mushroom body, left centrolateral neuropil of mandibular segment, left ventrolateral neuropil of T3, left ventrolateral neuropil of T2, right centrolateral neuropil of mandibular segment, left ventromedial neuropil of A1, left centromedial neuropil of A5, left centrolateral neuropil of A1, right dorsomedial neuropil of mandibular segment, right centromedial neuropil of T3, left central neuropil of A6, left central neuropil of A7, right dorsomedial subdivision of ventral nerve cord, left centromedial neuropil of A3, right centromedial neuropil of A4, right centromedial neuropil of A7, left centromedial subdivision of ventral nerve cord, left centromedial neuropil of A1, right ventromedial subdivision of ventral nerve cord, left centromedial neuropil of A4, left centromedial neuropil of mandibular segment, left centromedial neuropil of T3, clamp, right ventromedial neuropil of labial segment, right centromedial neuropil of maxillary segment, right ventrolateral neuropil of T2, right centromedial neuropil of A6, right ventrolateral neuropil of T1, right ventromedial neuropil of A1, left centromedial neuropil of tritocerebrum, right dorsomedial neuropil of A2, right dorsomedial neuropil of A3, right centromedial neuropil of A1, left ventromedial neuropil of A2, left ventromedial neuropil of A7, right dorsomedial neuropil of tritocerebrum, right ventromedial neuropil of A3, right centrolateral subdivision of ventral nerve cord, left centrolateral neuropil of maxillary segment, superior medial protocerebrum, left centromedial neuropil of labial segment, right ventromedial neuropil of A7, left centromedial neuropil of maxillary segment, left central neuropil of A2, left central neuropil of maxillary segment, right dorsomedial neuropil of T1, left centromedial neuropil of T2, right ventromedial neuropil of tritocerebrum, right central neuropil of T2, right central neuropil of A1, right central neuropil of A5, anterior optic tubercle primordial, right centromedial neuropil of T1, right dorsomedial neuropil of A5, right dorsomedial neuropil of A6, right dorsomedial neuropil of A8, right dorsomedial neuropil of T3, right dorsomedial neuropil of T2
JRC_FlyEM_Hemibrain PB(R3), GOR(L), BU(L), LAL(L), ATL(L), GF(R), PB(R1), PB(R2), VES(L), NO1(R), mALT(L), CA(L), PB(L6), NO3(L), PB(L8), PB(L7), SMP(L), PB(L9), gL(L), SIP(L), b'L(L), bL(L), PB(R5), CRE(L), PB(R4), PB(R7), PB(R6), PB(R8), PB(L1), PB(R9), PB(L3), PB(L2), PB(L5), PB(L4), SCL(L), SPS(L), ICL(L), RUB(L), a'L(L), aL(L), NO2(R), NO3(R), NO1(L), NO2(L), AL(L), AOT(R), GA(R), POC, IPS(R), SAD, GC, mALT(R), AL(R), VES(R), SPS(R), ATL(R), IB, ICL(R), GOR(R), EPA(R), CAN(R), PRW, FLA(R), GNG, CA(R), LOP(R), PED(R), AMMC, b'L(R), LO(R), ME(R), AME(R), a'L(R), aL(R), bL(R), RUB(R), SCL(R), SMP(R), CRE(R), ROB(R), WED(R), SLP(R), LH(R), SIP(R), PVLP(R), AVLP(R), PLP(R), AOTU(R), PB, LAL(R), FB, BU(R), EB, gL(R), AB(R), AB(L), EPA(L)
JRC2018Unisex ICL, ROB, GOR, SLP, RUB, CRE, SMP, SPS, CAN, SCL, SIP, IB, ATL, AL, EPA, VES, LH, LO, SAD, AME, PVLP, AVLP, WED, PRW, AMMC, aL, LOP, a'L, bL, ME, PED, CA, NO, GA, AOTU, BU, PLP, GNG, EB, LAL, PB, IPS, b'L, gL, FB, FLA

4.4 - Bridging Registrations

Transformations to map between different cononical Drosophila templates.

Many transforms to map between different Drosophila template brains are available.

You can see how to use the above in python using navis-flybrains or in R using nat.flybrains

4.5 - Confidence Values

Confidence values for predictions on VFB.

Some annotations on VFB are based on predictions, for example, predicted neurotransmitters for neurons in electron microscopy datasets (see below). Where available, we include the confidence of these predictions (as a badge next to the annotation), as well as a link to the publication - in the example below, this would be by clicking on the ‘DOI’ badge.

An example confidence value on VFB.

Neurotransmitter Prediction Confidence Values

Neurotransmitter predictions for neurons in the FlyWire FAFB and Hemibrain datasets are the ‘conf_nt’ predictions from Eckstein et al. (2024). MANC and optic-lobe predictions are from Takemura et al. (2023) and Nern et al. (2024), respectively, using the methodology of Eckstein et al. (2024). This analysis only investigated a limited set of neurotransmitters and assumed a single neurotransmitter per neuron (see publications for further detail). Neurons with fewer than 100 presynapses are excluded.

4.6 - FlyLight Adult CNS Imaging Tiles

Tiles used during FlyLight Split-GAL4 expression pattern imaging.

While most first-generation FlyLight expression pattern images are single 20x objective acquisitions, many Split-GAL4 lines were imaged using 63x or 40x objectives. This requires multiple image acquisitions to cover the CNS regions of interest. VFB integrates only the combined images derived from these tiles and lists the tiles used to create these combined images in the comment section for each image, for example: “tile(s): ’left_dorsal, right_dorsal, ventral”. These tiles do not necessarily cover the entire brain or VNC, which complicates the assessment of the specificity of these lines. VFB notes in the comment where the combined tiles do not provide full coverage. For further information refer to Figure 4 Supplemental File 1 from ‘A split-GAL4 driver line resource for Drosophila CNS cell types’ direct link. This is a preprint and may be updated.

Sets of tiles from FlyLight (Meissner et al., 2024):

FlyLight 63x Brain Tiles. More FlyLight 63x Brain Tiles. FlyLight 63x VNC Tiles. FlyLight 63x Neck Tiles. FlyLight 40x Tiles.

5 - Tutorials

This is where we show you how to use VFB and other tools to explore the available data.

5.1 - Application Programming Interfaces (APIs)

This is where we show you how to use VFBs Application Programming Interfaces (APIs) and other tools to explore the available data.

5.1.1 - Guide to Working with Images from Virtual Fly Brain (VFB) Using the VFBConnect Library

This guide will help you use the VFBConnect library to interact with Virtual Fly Brain (VFB) data, specifically focusing on working with neuron images and their representations. The examples provided cover retrieving neuron data, accessing different types of data representations (skeleton, mesh, volume), and visualizing this data.

Prerequisites

Before starting, ensure you have the VFBConnect library installed. The recommended Python version is 3.10.14, as this version is tested against the library.

pip install vfb-connect

Importing the VFBConnect Library

Start by importing the VFBConnect library. This library provides a simple interface to interact with neuron data from the Virtual Fly Brain.

from vfb_connect import vfb

Retrieving Neuron Data

To work with specific neurons, you can use the vfb.term() function. This function takes a unique identifier (e.g., ID, label, synonym) for the neuron.

Example: Retrieving a Single Neuron

neuron = vfb.term('5th s-LNv (FlyEM-HB:511051477)')

The neuron variable now holds data about the neuron identified by the given term.

Working with Neuron Data

The retrieved neuron object can provide different representations of neuron data, such as its skeleton, mesh, and volume. These representations can be visualized using various plotting methods.

# Access the skeleton representation
neuron_skeleton = neuron.skeleton

# Check the type of the skeleton representation
print(type(neuron_skeleton))  # Output: <class 'navis.neuron.Neuron'>

# Plot the skeleton in 2D
neuron_skeleton.plot2d()

# Access the mesh representation
neuron_mesh = neuron.mesh

# Access the volume representation
neuron_volume = neuron.volume

Retrieving Multiple Neurons

You can retrieve multiple neurons using the vfb.terms() function, which accepts a list of neuron identifiers.

Example: Retrieving Multiple Neurons

neurons = vfb.terms(['5th s-LNv', 'fru-M-300008', 'catmaid_fafb:8876600'])

This command retrieves multiple neurons, which can then be visualized or manipulated collectively.

Flexible Matching Capabilities

One of the key features of the VFBConnect library is its flexible matching capability. The vfb.terms() function can accept a variety of identifiers, such as:

  • IDs: Unique identifiers assigned to each neuron.
  • Xref (Cross-references): External references that relate to other datasets.
  • Labels: Human-readable names for neurons.
  • Symbols: Abbreviated names or symbols used to represent neurons.
  • Synonyms: Alternative names by which a neuron might be known.
  • Partial Matching: You can provide a partial name, and VFBConnect will attempt to find the best match.
  • Case Insensitive Matching: Matching is case insensitive, so if an exact match isn’t found, ‘5th s-LNv’ and ‘5TH S-LNV’ are treated the same. This allows for more flexible querying without worrying about exact case matching.

Example: Using Flexible Matching

neurons = vfb.terms('5th s-LN')

If an exact match isn’t found, VFBConnect will provide potential matches. This feature ensures that even with partial or approximate information, you can still retrieve the relevant neuron data.

Output Example:

Notice: No exact match found, but potential matches starting with '5th s-LN': 
'5th s-LNv (FlyEM-HB:511051477)': 'VFB_jrchk8e0', 
'5th s-LNv': 'VFB_jrchk8e0'

This notice will help you identify the correct neuron based on the closest matches.

Visualizing Neurons

VFBConnect provides various methods to visualize neuron data, both individually and collectively.

3D Visualization

To plot neurons in 3D, use the plot3d() method. This is useful for visualizing the spatial structure of neurons.

neurons.plot3d()

2D Visualization

For 2D visualization, use the plot2d() method.

neurons.plot2d()

Viewing Merged Templates

VFBConnect also allows viewing merged templates of neurons, combining multiple neuron structures into a single view.

neurons.show()

Opening Neurons in VFB

To open the neurons directly in Virtual Fly Brain, use the open() method. This will launch a browser window displaying the neurons in the VFB interface.

neurons.open()

Summary

  • Use vfb.term() to retrieve single neuron data.
  • Use vfb.terms() to retrieve multiple neurons with support for partial, case-insensitive, and flexible matching (IDs, labels, symbols, synonyms, etc.).
  • Access different data representations (skeleton, mesh, volume) via neuron objects.
  • Visualize neuron data in 2D and 3D.
  • Use the show() method to view merged neuron templates.
  • Open neuron data directly in Virtual Fly Brain with the open() method.

These examples provide a foundation for working with neuron data from Virtual Fly Brain using the VFBConnect library. By exploring different neuron representations and visualization methods, you can analyze and understand neuron structures more effectively.

5.1.2 - Hacking the connectome

Tutorials from the Virtual Fly Brain “Hacking the connectome” workshop that was run in collaboration with the Drosophila Connectomics Group based at the Dept of Zoology, University of Cambridge.

Below you can watch the recorded introduction session of our workshop and follow along with the workshop notebooks we work through to show examples of how you can use the available {{ ref “tools.md” tools }} to explore and analyse the published connectomes available on VFB.

5.1.2.1 - Tool landscape

There are multiple tools to query the various data sources. Fortunately they play together nicely. Here is a quick overview

Below are brief descriptions of the libraries/packages. For details, I defer to their respective (excellent) documentations.

Querying VFB

Queries against VFB’s REST API are easiest with vfb_connect for Python. For R there is a vfb_connect wrapper, vfbconnectr. See also David’s presentation for details.

R

In R, the natverse is your one-stop-shop for all things neuron: it’s a collection of various R packages that are built on top of the neuroanatomy toolbox, nat. Of particular relevance for this workshop:

  1. nat is a general purpose library for working with morphological neuron data. In this workshop, we make heavy use of nat’s plotting capabilities but its capabilities extend far beyond that. If you want to run any morphological analysis, I highly recommend you have a look at the “Articles” in nat’s doc.
  2. neuprintr and hemibrainr provide an interface with neuprint and the Janelia hemibrain dataset (link). The former lets you run queries against neuprint’s neo4j database while the latter contains meta data and various convenience functions to work with the hemibrain dataset.
  3. rcatmaid provides an interface with CATMAID servers such as those the VFB uses to host published from the FAFB or larval fruit fly dataset. rcatmaid is built on top of nat and you can use nat functions with neurons pulled via rcatmaid.

Python

In Python, we find packages analogous to those in R:

  1. navis is nat’s serpentine sibling: a general purpose neuron library for visualization and analysis of neuronal morphologies. It also features interfaces e.g. with Blender 3D and the natverse via rpy2.
  2. python-neuprint is a Python library to interface with neuprint maintained by Janelia. Note that navis wraps this library and adds some convenience functions. See this tutorial.
  3. pymaid lets you interface with CATMAID servers. Critically, it’s built on top of navis and you can natively use navis functions with pymaid neurons. Note that due to a name clash the library is called python-catmaid on PyPI.

Noteworthy mentions

There are a few more packages/functions that you might hear of over the course of the workshop.

NBLAST

NBLAST is an algorithm that computes morphological similarity between neurons (Costa et al., 2016). This has proven incredibly useful to find similar neurons across datasets but also to cluster neurons into cell types.

On the R side the algorithm is implemented in nat.nblast and in Python it is part of navis (see this tutorial).

Transforms

You will note that neurons pulled from VFB are typically in the same template space which makes co-visualization of neurons from different datasets a breeze. If you want to transform spatial data between template brains, e.g. from FAFB (“FAFB14”) to hemibrain (“JRCFIB2018F”), you should look for nat.flybrains & nat.jrcbrains in R and navis-flybrains in Python.

5.1.2.2 - Introduction to connectomic data and tools

Introduction session from the Virtual Fly Brain “Hacking the connectome” workshop that was run in collaboration with the Drosophila Connectomics Group based at the Dept of Zoology, University of Cambridge.

5.1.2.3 - Discovery

VFB integrates images and connectomics profiles of neurons from many sources. It classifies and records their properties using a standard, queryable classification. This standardises the names of neuron types across sources, so you don’t need to worry about differences in nomenclature uses and supports queries for neurons by their classification.

Required packages: vfb-connect and python-catmaid (pymaid & navis)

!pip install vfb-connect --upgrade
!pip install python-catmaid --upgrade

A note on using these notebooks

This is designed as an interactive tutorial. Feel free to add code cells below each example to try out variations of your own.

How to find neurons across datasets

VirtualFlyBrain integrates images and connectomics profiles of neurons from many sources. It classifies and records their properties using a standard, queryable classification (The Drosophila Anatomy Ontology). This standardises the names of neuron types across sources, so you don’t need to worry about differences in nomenclature uses and supports queries for neurons by their classification.

# Import libs and initialise API objects
from vfb_connect.cross_server_tools import VfbConnect
import pandas as pd
vc = VfbConnect()

import pymaid
import navis

navis.set_pbars(jupyter=False)
pymaid.set_pbars(jupyter=False)

# Connect to the VFB CATMAID server hosting the FAFB data
rm = pymaid.connect_catmaid(server="https://fafb.catmaid.virtualflybrain.org/", api_token=None, max_threads=10)

# Test call to see if connection works 
print(f'Server is running CATMAID version {rm.catmaid_version}')
WARNING: Could not load OpenGL library.
INFO  : Global CATMAID instance set. Caching is ON. (pymaid)
Server is running CATMAID version 2020.02.15-905-g93a969b37

Finds neurons by type (classification) across datasets

We can use the vc.get_instances method in combination with the name of a neuron type on VFB to find individual neurons from multiple sources.

Use the search tool on VFB to find neuron types by name or synonym:

Use either the full name or the Symbol to query for neurons:

DA3adPN = vc.get_instances("adult Drosulfakinin neuron", summary=True)
pd.DataFrame.from_records(DA3adPN)

label symbol id tags parents_label parents_id data_source accession templates dataset license
0 DSKMP3_R - 327937328 VFB_jrchjti6 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult Drosulfakinin neuron FBbt_00048999 neuprint_JRC_Hemibrain_1point1 327937328 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
1 DSKMP1A(PVM02)_L - 1260833150 VFB_jrchjti3 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult Drosulfakinin neuron FBbt_00048999 neuprint_JRC_Hemibrain_1point1 1260833150 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
2 DSKMP3_R - 328559607 VFB_jrchjti7 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult Drosulfakinin neuron FBbt_00048999 neuprint_JRC_Hemibrain_1point1 328559607 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
3 DSKMP1B_R - 1352077058 VFB_jrchjti4 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult Drosulfakinin neuron FBbt_00048999 neuprint_JRC_Hemibrain_1point1 1352077058 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
4 DSKMP1B(PVM02)_L - 1011184205 VFB_jrchjti5 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult Drosulfakinin neuron FBbt_00048999 neuprint_JRC_Hemibrain_1point1 1011184205 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
5 DSKMP1A_R - 1135837629 VFB_jrchjti2 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult Drosulfakinin neuron FBbt_00048999 neuprint_JRC_Hemibrain_1point1 1135837629 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...

Find neurons by location

We can use the same method to search for neurons by location, using simple queries.

# Find neurons by location. The following query works across multiple data sources and both sides of the brain.  
# Results may be incomplete & may include minor overlap inferred from low synapse counts

neurons_in_DA3 = vc.get_instances("'neuron' that 'overlaps' some 'antennal lobe glomerulus DA3'", summary=True)
neurons_in_DA3_tab = pd.DataFrame.from_records(neurons_in_DA3)
neurons_in_DA3_tab[0:5]
Running query: FBbt:00005106 that RO:0002131 some FBbt:00003934
Query URL: http://owl.virtualflybrain.org/kbs/vfb/instances?object=FBbt%3A00005106+that+RO%3A0002131+some+FBbt%3A00003934&prefixes=%7B%22FBbt%22%3A+%22http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FFBbt_%22%2C+%22RO%22%3A+%22http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FRO_%22%2C+%22BFO%22%3A+%22http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FBFO_%22%7D&direct=False
Query results: 158

label symbol id tags parents_label parents_id data_source accession templates dataset license
0 lLN2T_a(Tortuous)_R - 5813056598 VFB_jrchk8bi Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 5813056598 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
1 ORN_DL3_R - 1671625186 VFB_jrchk1hj Entity|has_image|Adult|Anatomy|has_neuron_conn... adult olfactory receptor neuron Or65 FBbt_00067011 neuprint_JRC_Hemibrain_1point1 1671625186 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
2 DA4m_adPN_R - 574037266 VFB_jrchjtdq Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe projection neuron DA4m adPN FBbt_00047714 neuprint_JRC_Hemibrain_1point1 574037266 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
3 Uniglomerular mALT DA3 adPN#L1 (FAFB:2449792) VFB_0010123h Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe projection neuron DA3 adPN FBbt_00100384 catmaid_fafb 2449792 JRC2018Unisex BatesSchlegel2020 https://creativecommons.org/licenses/by-sa/4.0...
4 lLN2T_e(Tortuous)_R - 1699974843 VFB_jrchk8br Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 1699974843 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
# Find local interneurons (intrinsic neurons) of the AL, overlapping DA3:

local_in_DA3 = vc.get_instances("'local interneuron of adult antennal lobe' that 'overlaps' some 'antennal lobe glomerulus DA3'",
                                summary=True)
local_in_DA3_tab = pd.DataFrame.from_records(local_in_DA3)
local_in_DA3_tab
Running query: FBbt:00007390 that RO:0002131 some FBbt:00003934
Query URL: http://owl.virtualflybrain.org/kbs/vfb/instances?object=FBbt%3A00007390+that+RO%3A0002131+some+FBbt%3A00003934&prefixes=%7B%22FBbt%22%3A+%22http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FFBbt_%22%2C+%22RO%22%3A+%22http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FRO_%22%2C+%22BFO%22%3A+%22http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FBFO_%22%7D&direct=False
Query results: 53

label symbol id tags parents_label parents_id data_source accession templates dataset license
0 lLN16b_R - 1887168462 VFB_jrchk89w Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1887168462 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
1 lLN1_c_R - 5813047691 VFB_jrchk8ae Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 5813047691 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
2 lLN2S(Star)_R - 1670627928 VFB_jrchk8bb Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2S FBbt_00049815 neuprint_JRC_Hemibrain_1point1 1670627928 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
3 lLN2F_b(Full)_R - 5813024698 VFB_jrchk8an Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2F FBbt_00049812 neuprint_JRC_Hemibrain_1point1 5813024698 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
4 lLN2T_c(Tortuous)_R - 1671292719 VFB_jrchk8bo Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 1671292719 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
5 lLN1_c_R - 5813062199 VFB_jrchk8af Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 5813062199 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
6 lLN1_a_R - 5813130064 VFB_jrchk8a4 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 5813130064 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
7 lLN1_c_R - 1702651358 VFB_jrchk8aj Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1702651358 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
8 lLN2T_e(Tortuous)_R - 1640922516 VFB_jrchk8bs Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 1640922516 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
9 lLN11_R - 1670278227 VFB_jrchk89e Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1670278227 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
10 lLN2P_c(Patchy)_R - 2105086391 VFB_jrchk8b0 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2P FBbt_00049813 neuprint_JRC_Hemibrain_1point1 2105086391 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
11 lLN2T_b(Tortuous)_R - 1640572741 VFB_jrchk8bl Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 1640572741 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
12 lLN1_c_R - 1578826464 VFB_jrchk8ah Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1578826464 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
13 lLN2P_a(Patchy)_R - 2041621893 VFB_jrchk8ao Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2P FBbt_00049813 neuprint_JRC_Hemibrain_1point1 2041621893 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
14 lLN2S(Star)_R - 1762359683 VFB_jrchk8bc Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2S FBbt_00049815 neuprint_JRC_Hemibrain_1point1 1762359683 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
15 lLN1_b_R - 5813054622 VFB_jrchk8a8 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 5813054622 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
16 lLN2F_a(Full)_R - 1670287030 VFB_jrchk8al Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2F FBbt_00049812 neuprint_JRC_Hemibrain_1point1 1670287030 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
17 lLN12a_R - 1826445251 VFB_jrchk89g Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1826445251 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
18 lLN11_R - 2040301572 VFB_jrchk89d Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 2040301572 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
19 il3LN6_R - 5813018460 VFB_jrchk88v Entity|has_image|Adult|Anatomy|has_neuron_conn... local interneuron of adult antennal lobe FBbt_00007390 neuprint_JRC_Hemibrain_1point1 5813018460 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
20 lLN2R_b(Regional)_R - 5813076969 VFB_jrchk8b6 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2R FBbt_00049814 neuprint_JRC_Hemibrain_1point1 5813076969 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
21 lLN16a_R - 1702318692 VFB_jrchk89t Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1702318692 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
22 lLN2T_d(Tortuous)_R - 1667251683 VFB_jrchk8bp Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 1667251683 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
23 lLN2R_b(Regional)_R - 1702305987 VFB_jrchk8b5 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2R FBbt_00049814 neuprint_JRC_Hemibrain_1point1 1702305987 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
24 v2LN35_R - 1733056086 VFB_jrchk8ew Entity|has_image|Adult|Anatomy|has_neuron_conn... local interneuron of adult antennal lobe FBbt_00007390 neuprint_JRC_Hemibrain_1point1 1733056086 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
25 lLN1_b_R - 1610530558 VFB_jrchk8ac Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1610530558 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
26 lLN2S(Star)_R - 1640922754 VFB_jrchk8b8 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2S FBbt_00049815 neuprint_JRC_Hemibrain_1point1 1640922754 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
27 lLN1_c_R - 1824101645 VFB_jrchk8ag Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1824101645 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
28 lLN1_c_R - 1547454812 VFB_jrchk8ai Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1547454812 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
29 lLN1_b_R - 5813069055 VFB_jrchk8aa Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 5813069055 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
30 lLN1_b_R - 1642623277 VFB_jrchk8ad Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1642623277 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
31 lLN2T_a(Tortuous)_R - 5813054726 VFB_jrchk8bh Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 5813054726 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
32 lLN2F_b(Full)_R - 1640909284 VFB_jrchk8am Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2F FBbt_00049812 neuprint_JRC_Hemibrain_1point1 1640909284 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
33 lLN2F_a(Full)_R - 5901218894 VFB_jrchk8ak Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2F FBbt_00049812 neuprint_JRC_Hemibrain_1point1 5901218894 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
34 lLN2T_e(Tortuous)_R - 1699974843 VFB_jrchk8br Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 1699974843 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
35 lLN10_R - 1825789179 VFB_jrchk89b Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1825789179 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
36 lLN2S(Star)_R - 1702306037 VFB_jrchk8b7 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2S FBbt_00049815 neuprint_JRC_Hemibrain_1point1 1702306037 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
37 lLN2S(Star)_R - 1732995501 VFB_jrchk8ba Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2S FBbt_00049815 neuprint_JRC_Hemibrain_1point1 1732995501 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
38 lLN2S(Star)_R - 5813069085 VFB_jrchk8b9 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2S FBbt_00049815 neuprint_JRC_Hemibrain_1point1 5813069085 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
39 v2LN3b_R - 1888199872 VFB_jrchk8fg Entity|has_image|Adult|Anatomy|has_neuron_conn... local interneuron of adult antennal lobe FBbt_00007390 neuprint_JRC_Hemibrain_1point1 1888199872 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
40 lLN1_b_R - 1640887603 VFB_jrchk8a6 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 1640887603 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
41 lLN1_b_R - 5813078440 VFB_jrchk8a7 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 5813078440 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
42 lLN2T_b(Tortuous)_R - 5813034493 VFB_jrchk8bm Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 5813034493 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
43 lLN1_b_R - 5813054777 VFB_jrchk8a9 Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 5813054777 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
44 v2LN30_R - 1671620613 VFB_jrchk8e8 Entity|has_image|Adult|Anatomy|has_neuron_conn... local interneuron of adult antennal lobe FBbt_00007390 neuprint_JRC_Hemibrain_1point1 1671620613 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
45 v2LN3b_R - 5813034455 VFB_jrchk8ff Entity|has_image|Adult|Anatomy|has_neuron_conn... local interneuron of adult antennal lobe FBbt_00007390 neuprint_JRC_Hemibrain_1point1 5813034455 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
46 lLN2T_a(Tortuous)_R - 5813032595 VFB_jrchk8bd Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 5813032595 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
47 lLN2T_a(Tortuous)_R - 5813056598 VFB_jrchk8bi Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 5813056598 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
48 lLN1_b_R - 5813054725 VFB_jrchk8ab Entity|has_image|Adult|Anatomy|has_neuron_conn... adult local interneuron of the lateral ALl1 ne... FBbt_00007394 neuprint_JRC_Hemibrain_1point1 5813054725 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
49 lLN2P_b(Patchy)_R - 1946178096 VFB_jrchk8au Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2P FBbt_00049813 neuprint_JRC_Hemibrain_1point1 1946178096 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
50 lLN2T_a(Tortuous)_R - 5813055277 VFB_jrchk8bf Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 5813055277 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
51 l2LN18_R - 5813054773 VFB_jrchk891 Entity|has_image|Adult|Anatomy|has_neuron_conn... local interneuron of adult antennal lobe FBbt_00007390 neuprint_JRC_Hemibrain_1point1 5813054773 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
52 lLN2T_a(Tortuous)_R - 1762354941 VFB_jrchk8bg Entity|has_image|Adult|Anatomy|has_neuron_conn... adult antennal lobe lateral local neuron 2T FBbt_00049816 neuprint_JRC_Hemibrain_1point1 1762354941 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
# Find neurons by dataset/paper - on CATMAID

bates = pymaid.find_neurons(annotations='Paper: Bates and Schlegel et al 2020')
bates
INFO  : Found 583 neurons matching the search parameters (pymaid)

type name skeleton_id n_nodes n_connectors n_branches n_leafs cable_length soma units
0 CatmaidNeuron Uniglomerular mALT DA1 lPN 57316 2863105 ML 2863104 NA NA NA NA NA NA 1 nanometer
1 CatmaidNeuron Uniglomerular mALT DA3 adPN 57350 HG 57349 NA NA NA NA NA NA 1 nanometer
... ... ... ... ... ... ... ... ... ... ...
581 CatmaidNeuron Multiglomerular mlALT vPN VM7d+VM5d+DC4+6 LTS ... 4624378 NA NA NA NA NA NA 1 nanometer
582 CatmaidNeuron Uniglomerular mALT DL2d adPN 57342 ML 57341 NA NA NA NA NA NA 1 nanometer
# Inspect what datasets are available on VFB

ds = vc.neo_query_wrapper.get_datasets(summary=True)
ds_tab = pd.DataFrame.from_records(ds)
ds_tab.sort_values(by=['id'])

label symbol id tags description miniref FlyBase PMID DOI
81 EM L1 Andrade et al. 2019 Andrade2019 Entity|Individual|DataSet [L1 EM reconstructed neurons from Andrade et a... Andrade et al., 2019, Curr. Biol. 29(3): 412--... FBrf0241389 30661802 10.1016/j.cub.2018.12.012
16 MBONs and split-GAL4 lines that target them (A... Aso2014 Entity|Individual|DataSet [] Aso et al., 2014, eLife 3: e04577 FBrf0227179 25535793 10.7554/eLife.04577
19 split-GAL4 lines for dopaminergic neurons (Aso... AsoRubin2016 Entity|Individual|DataSet [For comparison of the properties of memories ... Aso and Rubin, 2016, eLife 5: e16135 FBrf0233230 27441388 10.7554/eLife.16135
52 EM FAFB Bates and Schlegel et al 2020 BatesSchlegel2020 Entity|Individual|DataSet [FAFB EM reconstructed neurons from Bates and ... Bates and Schlegel et al., 2020 10.1016/j.cub.2020.06.042
0 Larval olfactory system neurons - EM (Berk2016) Berck2016 Entity|Individual|DataSet [Berck, Khandelwal et al. 2016] Berck et al., 2016, eLife 5: e14859 FBrf0232785 27177418 10.7554/eLife.14859
... ... ... ... ... ... ... ... ... ...
30 Lee lab adult brain lineage clone image set Yu2013 Entity|Individual|DataSet [An exhaustive set of lineage clones covering ... Yu et al., 2013, Curr. Biol. 23(8): 633--643 FBrf0221412 23541733 10.1016/j.cub.2013.02.057
15 EM L1 Zarin, Mark et al. 2019 Zarin2019 Entity|Individual|DataSet [L1 EM reconstructed neurons from Zarin, Mark ... Zarin, Mark et al., 2019 10.1101/617977
48 EM FAFB Zheng et al 2018 Zheng2018 Entity|Individual|DataSet [FAFB EM reconstructed neurons from Zheng et a... Zheng et al., 2018, Cell 174(3): 730--743.e22 FBrf0239557 30033368 10.1016/j.cell.2018.06.019
34 EM FAFB Zheng et al 2020 Zheng2020 Entity|Individual|DataSet [FAFB EM reconstructed neurons from Zheng et a... Zheng et al. 2020 10.1101/2020.04.17.047167
28 Larval motor circuit neurons (Zwart2016) Zwart2016 Entity|Individual|DataSet [Zwart et al. 2016] Zwart et al., 2016, Neuron 91(3): 615--628 FBrf0233076 27427461 10.1016/j.neuron.2016.06.031

83 rows × 9 columns

sayin_tab = pd.DataFrame.from_records(vc.get_instances_by_dataset('Sayin2019', summary=True))
sayin_tab

label symbol id tags parents_label parents_id data_source accession templates dataset license
0 OA-VPM3 (FAFB:1329078) VFB_001001dr Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM3 neuron FBbt_00110151 catmaid_fafb 1329078 JRC2018Unisex Sayin2019 https://creativecommons.org/licenses/by-sa/4.0...
1 OA-VPM4 (FAFB:1191261) VFB_001001dq Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM4 neuron FBbt_00110152 catmaid_fafb 1191261 JRC2018Unisex Sayin2019 https://creativecommons.org/licenses/by-sa/4.0...
vc.get_connected_neurons_by_type(upstream_type='LNd', downstream_type='adult descending neuron', weight=20)

upstream_neuron_id upstream_neuron_name weight downstream_neuron_id downstream_neuron_name upstream_class downstream_class up_data_source up_accession down_source down_accession
0 VFB_jrchjzxx LNd_R - 5813021192 25 VFB_jrchjthm DNp27_R - 1072063538 LNd neuron descending neuron of the posterior brain DNp27 neuprint_JRC_Hemibrain_1point1 5813021192 neuprint_JRC_Hemibrain_1point1 1072063538
# Intra pacemaker neuron neuron connections

vc.get_connected_neurons_by_type(upstream_type='pacemaker neuron', downstream_type='pacemaker neuron', weight=20)

upstream_neuron_id upstream_neuron_name weight downstream_neuron_id downstream_neuron_name upstream_class downstream_class up_data_source up_accession down_source down_accession
0 VFB_jrchjzxy LNd_R - 5813069648 37 VFB_jrchk8e0 5th s-LNv - 511051477 LNd neuron s-LNv neuron neuprint_JRC_Hemibrain_1point1 5813069648 neuprint_JRC_Hemibrain_1point1 511051477
1 VFB_jrchk089 LPN_R - 480029788 43 VFB_jrchk08a LPN_R - 450034902 LP neuron LP neuron neuprint_JRC_Hemibrain_1point1 480029788 neuprint_JRC_Hemibrain_1point1 450034902
2 VFB_jrchjtf0 DN1pA_R - 324846570 25 VFB_jrchk8e0 5th s-LNv - 511051477 DN1p neuron s-LNv neuron neuprint_JRC_Hemibrain_1point1 324846570 neuprint_JRC_Hemibrain_1point1 511051477
3 VFB_jrchjtf0 DN1pA_R - 324846570 37 VFB_jrchjzxy LNd_R - 5813069648 DN1p neuron LNd neuron neuprint_JRC_Hemibrain_1point1 324846570 neuprint_JRC_Hemibrain_1point1 5813069648
4 VFB_jrchk8e0 5th s-LNv - 511051477 40 VFB_jrchjzxy LNd_R - 5813069648 s-LNv neuron LNd neuron neuprint_JRC_Hemibrain_1point1 511051477 neuprint_JRC_Hemibrain_1point1 5813069648
5 VFB_jrchjtf3 DN1pA_R - 387166379 25 VFB_jrchk8e0 5th s-LNv - 511051477 DN1p neuron s-LNv neuron neuprint_JRC_Hemibrain_1point1 387166379 neuprint_JRC_Hemibrain_1point1 511051477
6 VFB_jrchjtf1 DN1pA_R - 325529237 30 VFB_jrchjzxy LNd_R - 5813069648 DN1p neuron LNd neuron neuprint_JRC_Hemibrain_1point1 325529237 neuprint_JRC_Hemibrain_1point1 5813069648
7 VFB_jrchk8e0 5th s-LNv - 511051477 25 VFB_jrchjzxx LNd_R - 5813021192 s-LNv neuron LNd neuron neuprint_JRC_Hemibrain_1point1 511051477 neuprint_JRC_Hemibrain_1point1 5813021192
8 VFB_jrchjtez DN1pA_R - 5813010153 25 VFB_jrchk8e0 5th s-LNv - 511051477 DN1p neuron s-LNv neuron neuprint_JRC_Hemibrain_1point1 5813010153 neuprint_JRC_Hemibrain_1point1 511051477
9 VFB_jrchjzxy LNd_R - 5813069648 29 VFB_jrchjzxw LNd_R - 5813056917 LNd neuron LNd neuron neuprint_JRC_Hemibrain_1point1 5813069648 neuprint_JRC_Hemibrain_1point1 5813056917
10 VFB_jrchjtf2 DN1pA_R - 387944118 22 VFB_jrchk8e0 5th s-LNv - 511051477 DN1p neuron s-LNv neuron neuprint_JRC_Hemibrain_1point1 387944118 neuprint_JRC_Hemibrain_1point1 511051477
11 VFB_jrchjtf2 DN1pA_R - 387944118 34 VFB_jrchjzxy LNd_R - 5813069648 DN1p neuron LNd neuron neuprint_JRC_Hemibrain_1point1 387944118 neuprint_JRC_Hemibrain_1point1 5813069648
12 VFB_jrchjtf1 DN1pA_R - 325529237 33 VFB_jrchk8e0 5th s-LNv - 511051477 DN1p neuron s-LNv neuron neuprint_JRC_Hemibrain_1point1 325529237 neuprint_JRC_Hemibrain_1point1 511051477
13 VFB_jrchk08a LPN_R - 450034902 30 VFB_jrchk089 LPN_R - 480029788 LP neuron LP neuron neuprint_JRC_Hemibrain_1point1 450034902 neuprint_JRC_Hemibrain_1point1 480029788
14 VFB_jrchjtey DN1a_R - 5813022274 63 VFB_jrchk8e0 5th s-LNv - 511051477 DN1a neuron s-LNv neuron neuprint_JRC_Hemibrain_1point1 5813022274 neuprint_JRC_Hemibrain_1point1 511051477
15 VFB_jrchjtex DN1a_R - 264083994 55 VFB_jrchk8e0 5th s-LNv - 511051477 DN1a neuron s-LNv neuron neuprint_JRC_Hemibrain_1point1 264083994 neuprint_JRC_Hemibrain_1point1 511051477
16 VFB_jrchjtey DN1a_R - 5813022274 75 VFB_jrchjzxy LNd_R - 5813069648 DN1a neuron LNd neuron neuprint_JRC_Hemibrain_1point1 5813022274 neuprint_JRC_Hemibrain_1point1 5813069648
17 VFB_jrchjtex DN1a_R - 264083994 79 VFB_jrchjzxy LNd_R - 5813069648 DN1a neuron LNd neuron neuprint_JRC_Hemibrain_1point1 264083994 neuprint_JRC_Hemibrain_1point1 5813069648
18 VFB_jrchjtf3 DN1pA_R - 387166379 30 VFB_jrchjzxy LNd_R - 5813069648 DN1p neuron LNd neuron neuprint_JRC_Hemibrain_1point1 387166379 neuprint_JRC_Hemibrain_1point1 5813069648
19 VFB_jrchjzxy LNd_R - 5813069648 21 VFB_jrchjzxx LNd_R - 5813021192 LNd neuron LNd neuron neuprint_JRC_Hemibrain_1point1 5813069648 neuprint_JRC_Hemibrain_1point1 5813021192

vc.get_connected_neurons_by_type(upstream_type='adult neuron', downstream_type='adult Drosulfakinin neuron', weight=20)

upstream_neuron_id upstream_neuron_name weight downstream_neuron_id downstream_neuron_name upstream_class downstream_class up_data_source up_accession down_source down_accession
0 VFB_jrchjsj3 AstA1_L - 362473525 28 VFB_jrchjti4 DSKMP1B_R - 1352077058 adult neuron adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 362473525 neuprint_JRC_Hemibrain_1point1 1352077058
1 VFB_jrchk5zh SLP384_R - 482702027 20 VFB_jrchjti6 DSKMP3_R - 327937328 adult superior lateral protocerebrum neuron 384 adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 482702027 neuprint_JRC_Hemibrain_1point1 327937328
2 VFB_jrchjrjn AVLP001_R - 1321564092 26 VFB_jrchjti2 DSKMP1A_R - 1135837629 adult anterior ventrolateral protocerebrum neu... adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 1321564092 neuprint_JRC_Hemibrain_1point1 1135837629
3 VFB_jrchk5eo SLP066_R - 327843160 42 VFB_jrchjti4 DSKMP1B_R - 1352077058 adult superior lateral protocerebrum neuron 066 adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 327843160 neuprint_JRC_Hemibrain_1point1 1352077058
4 VFB_jrchk5qf SLP244_R - 298214577 27 VFB_jrchjti6 DSKMP3_R - 327937328 adult superior lateral protocerebrum neuron 244 adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 298214577 neuprint_JRC_Hemibrain_1point1 327937328
... ... ... ... ... ... ... ... ... ... ... ...
56 VFB_jrchk6zu SMP449_R - 5813026592 25 VFB_jrchjti4 DSKMP1B_R - 1352077058 adult superior medial protocerebrum neuron 449 adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 5813026592 neuprint_JRC_Hemibrain_1point1 1352077058
57 VFB_jrchk5jv SLP152_R - 487812620 28 VFB_jrchjti4 DSKMP1B_R - 1352077058 adult superior lateral protocerebrum neuron 152 adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 487812620 neuprint_JRC_Hemibrain_1point1 1352077058
58 VFB_jrchjrxe AVLP223_R - 1356743512 27 VFB_jrchjti2 DSKMP1A_R - 1135837629 adult anterior ventrolateral protocerebrum neu... adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 1356743512 neuprint_JRC_Hemibrain_1point1 1135837629
59 VFB_jrchk5qg SLP244_R - 297533212 33 VFB_jrchjti6 DSKMP3_R - 327937328 adult superior lateral protocerebrum neuron 244 adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 297533212 neuprint_JRC_Hemibrain_1point1 327937328
60 VFB_jrchk6g5 SMP157_R - 421041565 32 VFB_jrchjti4 DSKMP1B_R - 1352077058 adult superior medial protocerebrum neuron 157 adult Drosulfakinin neuron neuprint_JRC_Hemibrain_1point1 421041565 neuprint_JRC_Hemibrain_1point1 1352077058

61 rows × 11 columns

5.1.2.4 - Mapping

If you have a single neuron, how can you find other neurons of the same or similar type within or between data sources?
!pip install vfb-connect --upgrade
# Import libs and initialise API objects
from vfb_connect.cross_server_tools import VfbConnect
import pandas as pd

vc = VfbConnect()

import pymaid
import navis

navis.set_pbars(jupyter=False)
pymaid.set_pbars(jupyter=False)

# Connect to the VFB CATMAID server hosting the FAFB data
rm = pymaid.connect_catmaid(server="https://fafb.catmaid.virtualflybrain.org/", api_token=None, max_threads=10)

# Test call to see if connection works 
print(f'Server is running CATMAID version {rm.catmaid_version}')

# Many functions return JSON-compatible nested data structures. This function coverts them to DataFrame.
def summary_2_df(summary, sort=None):
    """Convert summary to DataFrame.  Optionally specify a set of columns to sort as a list of strings"""
    if sort:
        return pd.DataFrame.from_records(summary).sort_values(sort)
    else:
        return pd.DataFrame.from_records(summary)
WARNING: Could not load OpenGL library.
INFO  : Global CATMAID instance set. Caching is ON. (pymaid)
Server is running CATMAID version 2020.02.15-925-gf56795c9c

Mapping

Use case: If I have a single neuron, how can I find other neurons of the same or similar type within or between data sources?

Mapping via common parent type

# lets take some examples from a discovery query on the previous spreadhseet
sayin_tab = pd.DataFrame.from_records(vc.get_instances_by_dataset('Sayin2019', summary=True))
sayin_tab

label symbol id tags parents_label parents_id data_source accession templates dataset license
0 OA-VPM3 (FAFB:1329078) VFB_001001dr Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM3 neuron FBbt_00110151 catmaid_fafb 1329078 JRC2018Unisex Sayin2019 https://creativecommons.org/licenses/by-sa/4.0...
1 OA-VPM4 (FAFB:1191261) VFB_001001dq Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM4 neuron FBbt_00110152 catmaid_fafb 1191261 JRC2018Unisex Sayin2019 https://creativecommons.org/licenses/by-sa/4.0...
oct_VPM3 = summary_2_df(vc.get_instances('octopaminergic VPM3 neuron', summary=True))
oct_VPM3

label symbol id tags parents_label parents_id data_source accession templates dataset license
0 OA-VPM3(NO2/NO3)_R - 329566174 VFB_jrchk10d Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM3 neuron FBbt_00110151 neuprint_JRC_Hemibrain_1point1 329566174 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
1 OA-VPM3(NO2/NO3)_L - 5813061260 VFB_jrchk10e Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM3 neuron FBbt_00110151 neuprint_JRC_Hemibrain_1point1 5813061260 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le...
2 OA-VPM3 (FAFB:1329078) VFB_001001dr Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM3 neuron FBbt_00110151 catmaid_fafb 1329078 JRC2018Unisex Sayin2019 https://creativecommons.org/licenses/by-sa/4.0...
oct_VPM3_images = vc.neo_query_wrapper.get_images(oct_VPM3['id'], stomp=True, template='JRC2018Unisex', image_folder = 'oct_VPM3b')
oct_VPM3_images

label symbol id tags parents_label parents_id data_source accession templates dataset license filename
0 OA-VPM3 (FAFB:1329078) VFB_001001dr Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM3 neuron FBbt_00110151 catmaid_fafb 1329078 JRC2018Unisex Sayin2019 https://creativecommons.org/licenses/by-sa/4.0... OA_VPM3__FAFB_1329078_.swc
1 OA-VPM3(NO2/NO3)_L - 5813061260 VFB_jrchk10e Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM3 neuron FBbt_00110151 neuprint_JRC_Hemibrain_1point1 5813061260 JRC_FlyEM_Hemibrain|JRC2018Unisex Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le... OA_VPM3_NO2_NO3__L___5813061260.swc
2 OA-VPM3(NO2/NO3)_R - 329566174 VFB_jrchk10d Entity|Octopaminergic|Adult|Anatomy|has_image|... octopaminergic VPM3 neuron FBbt_00110151 neuprint_JRC_Hemibrain_1point1 329566174 JRC2018Unisex|JRC_FlyEM_Hemibrain Xu2020NeuronsV1point1 https://creativecommons.org/licenses/by/4.0/le... OA_VPM3_NO2_NO3__R___329566174.swc
oct_VPM3_images = vc.get_images_by_type('octopaminergic VPM3 neuron', stomp=True, template='JRC2018Unisex', image_folder = 'oct_VPM3')
nl = navis.read_swc('./oct_VPM3')
navis.plot3d(nl)
Running query: FBbt:00110151
Query URL: http://owl.virtualflybrain.org/kbs/vfb/instances?object=FBbt%3A00110151&prefixes=%7B%22FBbt%22%3A+%22http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FFBbt_%22%2C+%22RO%22%3A+%22http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FRO_%22%2C+%22BFO%22%3A+%22http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FBFO_%22%7D&direct=False
Query results: 3