savu.data.data_structures.data_notes module

axis_labels()[source]

Note

axis_labels keyword argument

Options to pass are:

  1. Data object: Copy all labels from the Data object.

    >>> out_dataset[0].create_dataset(axis_labels=in_dataset[0], shape=new_shape)
    

2. {Data_obj: list}: Copy labels from the Data object and then remove or insert.

  • To remove dimensions: list_entry = ‘dim’. For example, to remove the first and last axis_labels from the copied list:

>>> out_dataset[0].create_dataset(axis_labels={in_dataset[0]: ['1', '-1']), shape=new_shape})
  • To add/replace dimensions: list_entry = ‘dim.name.unit’.

>>> out_dataset[0].create_dataset(axis_labels={in_dataset[0]: ['2.det_x.pixel', '3.det_y.pixel']}, shape=new_shape)
  • To insert dimensions: list_entry = ‘~dim.name.unit’.

>>> out_dataset[0].create_dataset(axis_labels={in_dataset[0]: ['~2.det_x.pixel', '~3.det_y.pixel']}, shape=new_shape)

(or a combination, where each successive step is applied after the previous changes have been made.)

  1. list: Where each element is of the form ‘name.unit’.

    >>> out_dataset[0].create_dataset(axis_labels=['rotation.deg', 'det_x.pixel', 'det_y.pixel'], shape=new_shape)
    
image_key()[source]

This is a helper function to be used after savu.data.data_structures.data_create.DataCreate.create_dataset(),

>>> out_dataset[0].create_dataset(in_dataset[0])
>>> out_dataset[0].trim_output_data(in_dataset[0], image_key=0)

if in_dataset[0] is a plugin input dataset with an image_key and 0 is the data index.

patterns()[source]

Note

patterns keyword argument

Options to pass are:

  1. Data object: Copy all patterns from the Data object.

    >>> out_dataset[0].create_dataset(axis_labels=labels, shape=new_shape, patterns=in_dataset[0])
    

2. {Data_obj: list}: Copy only the patterns given in the list from the Data object.

  • Copy the patterns: list_entry = ‘name’

>>> out_dataset[0].create_dataset(axis_labels=labels, shape=new_shape, patterns={in_dataset[0]: ['SINOGRAM', 'PROJECTION']})
  • Copy patterns but remove dimensions: list_entry = ‘name1.r1,r2…’:

>>> out_dataset[0].create_dataset(axis_labels=labels, shape=new_shape, patterns={in_dataset[0]: ['SINOGRAM.1', 'PROJECTION.1']})
  • Copy ALL patterns but remove dimensions: list_entry = ‘*.r1,r2…’:

>>> out_dataset[0].create_dataset(axis_labels=labels, shape=new_shape, patterns={in_dataset[0]: '*.0'})