nat1.8.25 package

NeuroAnatomy Toolbox for Analysis of 3D Image Data

write.nrrd

Write data and metadata to NRRD file or create a detached NRRD (nhdr) ...

write.neuron

Write out a neuron in any of the file formats we know about

write.neuronlistfh

Write out a neuronlistfh object to an RDS file

write.neurons

Write neurons from a neuronlist object to individual files, or a zip a...

write.vtk

Write object to VTK file

xform

Transform the 3D location of objects such as neurons

write.amiramesh

Write a 3D data object to an amiramesh format file

write.cmtk

Write a suitable list to a CMTK TypedStream file on disk

write.cmtkreg

Write out CMTK registration list to folder

write.hxsurf

Write Amira surface (aka HxSurface or HyperSurface) into .surf file.

affmat2cmtkparams

Decompose homogeneous affine matrix to CMTK registration parameters

all.equal.dotprops

all.equal method tailored to dotprops objects

all.equal.im3d

Check equality on data and key attributes of im3d objects

all.equal.neuron

Check equality on key fields of neuron object

amiramesh-io

Read AmiraMesh data in binary or ascii format

amiratype

Return the type of an amiramesh file on disk or a parsed header

as.hxsurf

Convert an object to a nat hxsurf object

as.im3d

Convert a suitable object to an im3d object.

as.mesh3d

Convert an object to an rgl mesh3d

as.neuronlist.neuronlistfh

convert neuronlistfh to a regular (in memory) neuronlist

as.neuronlist

Make a list of neurons that can be used for coordinate plotting/analys...

boundingbox

Get the bounding box of an im3d volume or other compatible object

c.neuronlist

Combine multiple neuronlists into a single list

clampmax

Return function that finds maximum of its inputs within a clamping ran...

cmtk.bindir

Return path to directory containing CMTK binaries

cmtk.call

Utility function to create and run calls to CMTK commandline tools

cmtk.dof2mat

Convert CMTK registration to homogeneous affine matrix with dof2mat

cmtk.extract_affine

Extract affine registration from CMTK registration file or in-memory l...

cmtk.mat2dof

Use CMTK mat2dof to convert homogeneous affine matrix into CMTK regist...

cmtk.reformatx

Reformat an image with a CMTK registration using the reformatx tool

cmtk.statistics

Calculate image statistics for a nrrd or other CMTK compatible file

cmtk.targetvolume

Defines a target volume for a CMTK reformatx operation

cmtk.version

Return cmtk version or test for presence of at least a specific versio...

cmtkparams2affmat

Compose homogeneous affine matrix from CMTK registration parameters

cmtkreg

Create and test cmtkreg objects that specify path to a CMTK registrati...

cmtkreglist

Make in-memory CMTK registration list from affine matrix or CMTK param...

coord2ind

Find 1D indices into a 3D image given spatial coordinates

dotprops-arithmetic

Arithmetic for dotprops objects

dotprops

dotprops: Neurons as point clouds with tangent vectors (but no connect...

fileformats

Set or return list of registered file formats that we can read

find.neuron

Find neurons within a 3D selection box (usually drawn in rgl window)

find.soma

Find neurons with soma inside 3D selection box (usually drawn in rgl w...

flip

Flip an array, matrix or vector about an axis

get-set-neuronlist-data.frame

Get or set the attached data.frame of a neuronlist

graph.nodes

Return root, end, or branchpoints of an igraph object

im3d-coords

Interconvert pixel and physical coordinates

im3d-io

Read/Write calibrated 3D blocks of image data

im3d

Construct an im3d object representing 3D image data, densities etc

image.im3d

Method to plot spatially calibrated image arrays

imexpand.grid

Convert locations of im3d voxel grid into XYZ coordinates

imscalebar

Make a scalebar to accompany an image.im3d plot

imslice

Slice out a 3D subarray (or 2d matrix) from a 3D image array

ind2coord

Find XYZ coords corresponding to 1D indices into a 3D image

intersect

Find the intersection of two collections of objects

is.amiramesh

Check if file is amiramesh format

is.fijitraces

Check whether a file is in Fiji's simple neurite tracer format

is.im3d

Test if an object is of class im3d

is.neuroml

Check whether a file is in NeuroML format

is.neuronlist

Test objects of neuronlist class to store multiple neurons

is.nrrd

Check if a file is a NRRD file

is.swc

Test if a file is an SWC format neuron

is.vaa3draw

Check if a file is in the raw image format used by Hanchuan Peng's Vaa...

mask

Mask an object, typically to produce a copy with some values zeroed ou...

materials

Extract or set the materials for an object

mirror

Mirror 3D object about a given axis, optionally using a warping regist...

nat-package

Analyse 3D biological image data especially neurons

ndigest

Calculated normalised digest value for an object

neuron-arithmetic

Arithmetic for neuron coordinates

neuron

neuron: class to represent traced neurons

neuronlist-arithmetic

Arithmetic for neuron coordinates applied to neuronlists

neuronlist-dataframe-methods

Methods for working with the dataframe attached to a neuronlist

neuronlist

Create a neuronlist from zero or more neurons

neuronlistfh

neuronlistfh - List of neurons loaded on demand from disk or remote we...

ngraph

ngraph: a graph to encode a neuron's connectivity

nlapply

lapply and mapply for neuronlists (with optional parallelisation)

nlscan

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

nopen3d

Open customised rgl window

normalise_swc

Normalise an SWC format block of neuron morphology data

npop3d

Remove plotted neurons or other 3D objects

nrrd.voxdims

Return voxel dimensions (by default absolute voxel dimensions)

nvertices

Find the number of vertices in an object (or each element of a neuronl...

nview3d

Set the 3D viewpoint of an RGL window using anatomical terms

origin

Return the space origin of a 3D image object

pan3d

Some useful extensions / changes to rgl defaults

plot.neuron

Plot a 2D projection of a neuron

plot.neuronlist

2D plots of the elements in a neuronlist, optionally using a subset ex...

plot3d.boundingbox

Plot a bounding box in 3D

plot3d.cmtkreg

Plot the domain of a CMTK registration

plot3d.dotprops

3D plots of dotprops objects using rgl package

plot3d.hxsurf

Plot amira surface objects in 3D using rgl

plot3d.neuron

Plot neurons in 3D using rgl library

plot3d.neuronlist

3D plots of the elements in a neuronlist, optionally using a subset ex...

plot3d

plot3d methods for different nat objects

pointsinside

Find which points of an object are inside a surface

potential_synapses

Calculate number of potential synapses between two neurons

projection

Make 2D (orthogonal) projection of 3D image data

prune

prune an object by removing points near (or far) from a target object

prune_strahler

Prune a neuron by removing segments with a given Strahler order

prune_vertices

Prune selected vertices or edges from a neuron

read.cmtk

Read CMTK TypedStream file to a list in memory

read.cmtkreg

Read a CMTK format registration

read.hxsurf

Read Amira surface (aka HxSurface or HyperSurface) files into hxsurf o...

read.landmarks

Generic functions to read/write landmarks in any supported format

read.morphml

Return parsed XML or R list versions of a NeuroML file

read.neuron.fiji

Read a neuron saved by Fiji's Simple Neurite Tracer Plugin

read.neuron.neuroml

Read one or more neurons from a NeuroML v1 file

read.neuron

Read a single neuron from a file

read.neuron.swc

Read a neuron in swc file format

read.neuronlistfh

Read a local, or remote, neuronlistfh object saved to a file.

read.neurons

Read one or more neurons from file to a neuronlist in memory

read.nrrd

Read nrrd file into an array in memory

read.vaa3draw

Read Vaa3d format image data

reglist

A simple wrapper class for multiple transformations

remotesync

Synchronise a remote object

resample

Resample an object with a new spacing

rootpoints

Return the root or branch points of a neuron or graph

scale.neuron

Scale and centre neuron 3D coordinates

seglengths

Calculate length of all segments in neuron

seglist

Make/convert neuron connectivity information into a seglist object

seglist2swc

Recalculate Neurons's SWCData using SegList and point information

segmentgraph

Return a simplified segment graph for a neuron

setdiff

Find the (asymmetric) difference between two collections of objects

simplify_reglist

Simplify a registration list

smooth_neuron

Smooth the 3D coordinates of a neuron skeleton

spine

Compute the longest path (aka spine or backbone) of a neuron

strahler_order

Find the Strahler order of each point in a neuron

sub-.neuronlistfh

Extract from neuronlistfh object or its attached data.frame

sub2ind

Find 1D index given n-dimensional indices

subset.dotprops

Subset points in dotprops object that match given conditions

subset.hxsurf

Subset hxsurf object to specified regions

subset.neuron

Subset neuron by keeping only vertices that match given conditions

subset.neuronlist

Subset neuronlist returning either new neuronlist or names of chosen n...

subset

Subset methods for different nat objects

summary.neuron

Summary statistics for neurons (e.g. cable length, number of nodes)

threshold

Threshold an object, typically to produce a mask

union

Find the union of two collections of objects

unmask

Make im3d image array containing values at locations defined by a mask

voxdims

Return voxel dimensions of an object

xformimage

Transform image files using a registration or affine matrix

xformpoints

Transform 3D points using a registration, affine matrix or function

xyzmatrix

Get and assign coordinates for classes containing 3D vertex data

NeuroAnatomy Toolbox (nat) enables analysis and visualisation of 3D biological image data, especially traced neurons. Reads and writes 3D images in NRRD and 'Amira' AmiraMesh formats and reads surfaces in 'Amira' hxsurf format. Traced neurons can be imported from and written to SWC and 'Amira' LineSet and SkeletonGraph formats. These data can then be visualised in 3D via 'rgl', manipulated including applying calculated registrations, e.g. using the 'CMTK' registration suite, and analysed. There is also a simple representation for neurons that have been subjected to 3D skeletonisation but not formally traced; this allows morphological comparison between neurons including searches and clustering (via the 'nat.nblast' extension package).

  • Maintainer: Gregory Jefferis
  • License: GPL-3
  • Last published: 2025-08-18