nat (version 1.8.16)

nlscan: Scan through a set of neurons, individually plotting each one in 3D

Description

Can also choose to select specific neurons along the way and navigate forwards and backwards.

Usage

nlscan(
  neurons,
  db = NULL,
  col = "red",
  Verbose = T,
  Wait = T,
  sleep = 0.1,
  extrafun = NULL,
  selected_file = NULL,
  selected_col = "green",
  yaml = TRUE,
  ...
)

Arguments

neurons

a neuronlist object or a character vector of names of neurons to plot from the neuronlist specified by db.

db

A neuronlist to use as the source of objects to plot. If NULL, the default, will use the neuronlist specified by options('nat.default.neuronlist')

col

the color with which to plot the neurons (default 'red').

Verbose

logical indicating that info about each selected neuron should be printed (default TRUE).

Wait

logical indicating that there should be a pause between each displayed neuron.

sleep

time to pause between each displayed neuron when Wait=TRUE.

extrafun

an optional function called when each neuron is plotted, with two arguments: the current neuron name and the current selected neurons.

selected_file

an optional path to a yaml file that already contains a selection.

selected_col

the color in which selected neurons (such as those specified in selected_file) should be plotted.

yaml

a logical indicating that selections should be saved to disk in (human-readable) yaml rather than (machine-readable) rda format.

...

extra arguments to pass to plot3d.

Value

A character vector of names of any selected neurons, of length 0 if none selected.

See Also

plot3d.character, plot3d.neuronlist

Examples

Run this code
# NOT RUN {
# scan a neuronlist
nlscan(kcs20)

# using neuron names
nlscan(names(kcs20), db=kcs20)
# equivalently using a default neuron list
options(nat.default.neuronlist='kcs20')
nlscan(names(kcs20))
# }
# NOT RUN {
# scan without waiting
nlscan(kcs20[1:4], Wait=FALSE, sleep=0)
# }
# NOT RUN {
# could select e.g. the gamma neurons with unbranched axons
gammas=nlscan(kcs20)
clear3d()
plot3d(kcs20[gammas])

# plot surface model of brain first
# nb depends on package only available on github
devtools::install_github(username = "jefferislab/nat.flybrains")
library(nat.flybrains)
plot3d(FCWB)
# could select e.g. the gamma neurons with unbranched axons
gammas=nlscan(kcs20)
clear3d()
plot3d(kcs20[gammas])
# }

Run the code above in your browser using DataCamp Workspace