neu_vol.report

How a describe() result presents itself.

The result is a Description: a real dict with the rendering attached, so d["shape"] and dict(d) behave as a mapping while print(d) and a bare d in a notebook give the table neu-vol info prints, and Description.frame() gives a DataFrame of the rows. The CLI builds its output from Description.header_lines() and Description.table_lines(), with its own store-reading sections between them, so there is one rendering.

pandas is not a dependency; Description.frame() imports it lazily.

Classes

Description

A describe result: a plain dict that also knows how to show itself.

Module Contents

class neu_vol.report.Description

Bases: dict

A describe result: a plain dict that also knows how to show itself.

dict(d) strips the presentation where a bare mapping is needed (JSON, a cache key).

Initialize self. See help(type(self)) for accurate signature.

frame()

A DataFrame of the per-row part: one row per dataset, or one per level.

For an HDF5 container, each dataset’s name, shape, dtype, chunking and recorded frame; otherwise one row per level with its own voxel size and chunking. Values are numbers, not the formatted strings of the text table.

header_lines() → list[str]

The location and the scalar facts, one label  value line each.

table_lines() → list[str]

The per-row part: one row per dataset for a container, else one per level.

text() → str

The whole report as one string: the CLI’s output minus its store reads (provenance.json, the DVID node summary), which a __repr__ must not make.

warning_lines() → list[str]

A warning when a second volume of another format shares this directory, and so is unreachable through detection.

property is_container: bool

True when this describes an HDF5 file of several arrays and resolved none (shape is None and datasets is filled).