napari.components.Dims#
- class napari.components.Dims(*, ndim: int = 2, ndisplay: Literal[2, 3] = 2, order: tuple[int, ...] = (), axis_labels: tuple[str, ...] = (), rollable: tuple[bool, ...] = (), range: tuple[RangeTuple, ...] = (), margin_left: tuple[float, ...] = (), margin_right: tuple[float, ...] = (), point: tuple[float, ...] = (), last_used: int = 0)[source]#
Bases:
EventedModel
Dimensions object modeling slicing and displaying.
- Parameters:
ndim (int) – Number of dimensions.
ndisplay (int) – Number of displayed dimensions.
range (tuple of 3-tuple of float) – List of tuples (min, max, step), one for each dimension in world coordinates space. Lower and upper bounds are inclusive.
point (tuple of floats) – Dims position in world coordinates for each dimension.
margin_left (tuple of floats) – Left margin in world pixels of the slice for each dimension.
margin_right (tuple of floats) – Right margin in world pixels of the slice for each dimension.
order (tuple of int) – Tuple of ordering the dimensions, where the last dimensions are rendered.
axis_labels (tuple of str) – Tuple of labels for each dimension.
last_used (int) – Dimension which was last interacted with.
- range#
List of tuples (min, max, step), one for each dimension in world coordinates space. Lower and upper bounds are inclusive.
- margin_left#
Left margin (=thickness) in world pixels of the slice for each dimension.
- Type:
tuple of floats
- margin_right#
Right margin (=thickness) in world pixels of the slice for each dimension.
- Type:
tuple of floats
- last_used#
Dimension which was last used. Tuple the slider position for each dims slider, in world coordinates.
- Type:
- current_step#
Current step for each dimension (same as point, but in slider coordinates).
- nsteps#
Number of steps available to each slider. These are calculated from the
range
.
- thickness#
Thickness of the slice (sum of both margins) for each dimension in world coordinates.
- Type:
tuple of floats
- displayed#
List of dimensions that are displayed. These are calculated from the
order
andndisplay
.
- not_displayed#
List of dimensions that are not displayed. These are calculated from the
order
andndisplay
.
- displayed_order#
Order of only displayed dimensions. These are calculated from the
displayed
dimensions.
Methods
construct
([_fields_set])Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data.
copy
(*[, include, exclude, update, deep])Duplicate a model, optionally choose which fields to include, exclude and change.
dict
(*[, include, exclude, by_alias, ...])Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
enums_as_values
([as_values])Temporarily override how enums are retrieved.
from_orm
(obj)json
(*[, include, exclude, by_alias, ...])Generate a JSON representation of the model, include and exclude arguments as per dict().
parse_file
(path, *[, content_type, ...])parse_obj
(obj)parse_raw
(b, *[, content_type, encoding, ...])reset
()Reset dims values to initial states.
roll
()Roll order of dimensions for display.
schema
([by_alias, ref_template])schema_json
(*[, by_alias, ref_template])set_axis_label
(axis, label)Sets new axis labels for the given axes.
set_current_step
(axis, value)set_point
(axis, value)Sets point to slice dimension in world coordinates.
set_range
(axis, _range)Sets ranges (min, max, step) for the given dimensions.
Transpose displayed dimensions.
update
(values[, recurse])Update a model in place.
update_forward_refs
(**localns)Try to update ForwardRefs on fields based on this Model, globalns and localns.
validate
(value)Attributes
Dimensions that are displayed.
events
Dimensions that are not displayed.
Details
- classmethod construct(_fields_set: SetStr | None = None, **values: Any) Model #
Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values
- copy(*, include: AbstractSetIntStr | MappingIntStrAny | None = None, exclude: AbstractSetIntStr | MappingIntStrAny | None = None, update: DictStrAny | None = None, deep: bool = False) Model #
Duplicate a model, optionally choose which fields to include, exclude and change.
- Parameters:
include – fields to include in new model
exclude – fields to exclude from new model, as with values this takes precedence over include
update – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data
deep – set to True to make a deep copy of the model
- Returns:
new model instance
- dict(*, include: AbstractSetIntStr | MappingIntStrAny | None = None, exclude: AbstractSetIntStr | MappingIntStrAny | None = None, by_alias: bool = False, skip_defaults: bool | None = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) DictStrAny #
Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
- enums_as_values(as_values: bool = True)#
Temporarily override how enums are retrieved.
- Parameters:
as_values (bool, optional) – Whether enums should be shown as values (or as enum objects), by default True
- json(*, include: AbstractSetIntStr | MappingIntStrAny | None = None, exclude: AbstractSetIntStr | MappingIntStrAny | None = None, by_alias: bool = False, skip_defaults: bool | None = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Callable[[Any], Any] | None = None, models_as_dict: bool = True, **dumps_kwargs: Any) unicode #
Generate a JSON representation of the model, include and exclude arguments as per dict().
encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().
- set_axis_label(axis: int | Sequence[int], label: str | Sequence[str])[source]#
Sets new axis labels for the given axes.
- set_point(axis: int | Sequence[int], value: float | Sequence[float])[source]#
Sets point to slice dimension in world coordinates.
- set_range(axis: int | Sequence[int], _range: Sequence[int | float] | Sequence[Sequence[int | float]])[source]#
Sets ranges (min, max, step) for the given dimensions.
- transpose()[source]#
Transpose displayed dimensions.
This swaps the order of the last two displayed dimensions. The order of the displayed is taken from Dims.order.
- update(values: EventedModel | dict, recurse: bool = True) None #
Update a model in place.
- Parameters:
values (dict, napari.utils.events.EventedModel) – Values to update the model with. If an EventedModel is passed it is first converted to a dictionary. The keys of this dictionary must be found as attributes on the current model.
recurse (bool) – If True, recursively update fields that are EventedModels. Otherwise, just update the immediate fields of this EventedModel, which is useful when the declared field type (e.g.
Union
) can have different realized types with different fields.