Split a neuron into its putative axon and dendrite, using a data.frame of precomputed split points. We have already pre-computed splits for all neurons and stored them in this package as hemibrain_precomputed_splitpoints. This is helpful because flow_centrality can take a long time to run on a large number of neurons.

hemibrain_flow_centrality(
  x,
  splitpoints = hemibrainr::hemibrain_all_splitpoints,
  knn = FALSE,
  calculate = TRUE,
  ...
)

Arguments

x

a nat::neuronlist or nat::neuron object. It is assumed that this neuron has been read in by neuprintr::neuprint_read_neurons or possibly catmaid::read.neurons.catmaid.

splitpoints

a data.frame of splitpoints from running flow_centrality, as produced by hemibrain_splitpoints. If a custom set of splitpoints is not given, precomputed splitpoints are used, hemibrain_precomputed_splitpoints. This defaults to hemibrain_splitpoints, however to see the available precomputations (which have used flow_centrality, in this case `polypre = TRUE`, `mode = "centrifugal"` and `split = "distance"`) with different parameters) please see hemibrain_precomputed_splitpoints.

knn

logical, whether or not to find corresponding points between splitpoints and x$d using a nearest neighbour search in 3D space (TRUE) or just use the given point IDs in splitpoints (i.e. if neurons have not been resampled or their skeletons otherwise modified).

calculate

logical. If TRUE then flow_centrality is called on any given neurons missing from the precomputed splitpoints.

...

methods sent to flow_centrality.

Value

a neuronlist

Details

From Schneider-Mizell et al. (2016): "We use flow centrality for four purposes. First, to split an arbor into axon and dendrite at the maximum centrifugal SFC, which is a preliminary step for computing the segregation index, for expressing all kinds of connectivity edges (e.g. axo-axonic, dendro-dendritic) in the wiring diagram, or for rendering the arbor in 3d with differently colored regions. Second, to quantitatively estimate the cable distance between the axon terminals and dendritic arbor by measuring the amount of cable with the maximum centrifugal SFC value. Third, to measure the cable length of the main dendritic shafts using centripetal SFC, which applies only to insect neurons with at least one output syn- apse in their dendritic arbor. And fourth, to weigh the color of each skeleton node in a 3d view, providing a characteristic signature of the arbor that enables subjective evaluation of its identity."

References

Schneider-Mizell, C. M., Gerhard, S., Longair, M., Kazimiers, T., Li, F., Zwart, M. F., … Cardona, A. (2015). Quantitative neuroanatomy for connectomics in Drosophila. bioRxiv, 026617. doi:10.1101/026617.

See also

Examples

# \donttest{ # Choose some neurons exemplars = c("202916528", "1279775082", "203253072", "326530038", "203253253", "5813079341") # Get neurons neurons = neuprintr::neuprint_read_neurons(exemplars) # Now use a pre-saved axon-dendrite split neurons.flow = hemibrain_flow_centrality(neurons) if (FALSE) { # Plot the split to check it nat::nopen3d() nlscan_split(neurons.flow, WithConnectors = TRUE) }# }