Datasets

Datasets are any spatially reference information and usually consist of geometrical representations of a surface or volume in 3D space. In VTK, this superclass is represented by the vtk.vtkDataSet abstract class.

In VTK, datasets consist of geometry, topology, and attributes to which PyVista provides direct access:

  • Geometry is the collection of points and cells in 2D or 3D space.

  • Topology defines the structure of the dataset, or how the points are connected to each other to form a cells making a surface or volume.

  • Attributes are any data values that are associated to either the points or cells of the dataset

All of the following data types are listed subclasses of a dataset and share a set of common functionality which we wrap into the base class pyvista.Common.

The Common Model

The pyvista.Common class holds attributes that are common to all spatially referenced datasets in PyVista. This base class is analogous to VTK’s vtk.vtkDataSet class.

Attributes

active_scalar

Returns the active scalars as an array.

active_scalar_info

Return the active scalar’s field and name.

active_scalar_name

Return the active scalar’s name.

active_scalars

Return the active scalars as an array.

active_scalars_info

[field, name].

active_scalars_name

Return the active scalar’s name.

active_vectors

Return the active vectors array.

active_vectors_info

[field, name].

active_vectors_name

Return the name of the active vectors array.

array_names

Return a list of array names for the dataset.

arrows

Return a glyph representation of the active vector data as arrows.

bounds

Return the bounding box of this dataset.

cell_arrays

Return the all cell arrays.

center

Return the center of the bounding box.

extent

Return the range of the bounding box.

length

Return the length of the diagonal of the bounding box.

n_arrays

Return the number of arrays present in the dataset.

n_cells

Return the number of cells in the entire dataset.

n_points

Return the number of points in the entire dataset.

n_scalars

Return the number of scalars.

number_of_cells

Return the number of cells.

number_of_points

Return the number of points.

point_arrays

Return the all point arrays.

points

Return a pointer to the points as a numpy object.

quality

Return cell quality using PyANSYS.

scalar_names

Return the array names.

t_coords

Return the active texture coordinates on the points.

textures

Return a dictionary to hold compatible vtk.vtkTexture objects.

vectors

Return active vectors.

volume

Return the mesh volume.

Methods

cast_to_unstructured_grid()

Get a new representation of this object as an pyvista.UnstructuredGrid.

clear_arrays()

Remove all arrays from point/cell/field data.

clear_cell_arrays()

Remove all cell arrays.

clear_point_arrays()

Remove all point arrays.

clear_textures()

Clear the textures from this mesh.

copy_meta_from(ido)

Copy pyvista meta data onto this object from another object.

get_array(name[, preference, info])

Search both point, cell and field data for an array.

get_data_range([arr, preference])

Get the non-NaN min and max of a named array.

overwrite(mesh)

Overwrite this mesh inplace with the new mesh’s geometries and data.

plot([off_screen, full_screen, screenshot, …])

Plot a vtk or numpy object.

points_to_double()

Make points double precision.

rename_array(old_name, new_name[, preference])

Change array name by searching for the array then renaming it.

rename_scalar(old_name, new_name[, preference])

Change an array name by searching for the array then renaming it.

rotate_x(angle)

Rotate mesh about the x-axis.

rotate_y(angle)

Rotate mesh about the y-axis.

rotate_z(angle)

Rotate mesh about the z-axis.

set_active_scalar(name[, preference])

Find the scalars by name and appropriately sets it as active.

set_active_scalars(name[, preference])

Find the scalars by name and appropriately sets it as active.

set_active_vectors(name[, preference])

Find the vectors by name and appropriately sets it as active.

transform(trans)

Compute a transformation in place using a 4x4 transform.

translate(xyz)

Translate the mesh.

class pyvista.Common(*args, **kwargs)

Bases: pyvista.core.filters.DataSetFilters, pyvista.core.common.DataObject

Methods in common to spatially referenced objects.

property active_scalar

Returns the active scalars as an array.

Type

DEPRECATED

property active_scalar_info

Return the active scalar’s field and name.

DEPRECATED: use .active_scalars_info instead

property active_scalar_name

Return the active scalar’s name.

property active_scalars

Return the active scalars as an array.

property active_scalars_info

[field, name].

Type

Return the active scalar’s field and name

property active_scalars_name

Return the active scalar’s name.

property active_vectors

Return the active vectors array.

property active_vectors_info

[field, name].

Type

Return the active scalar’s field and name

property active_vectors_name

Return the name of the active vectors array.

property array_names

Return a list of array names for the dataset.

This makes sure to put the active scalars’ name first in the list.

property arrows

Return a glyph representation of the active vector data as arrows.

Arrows will be located at the points of the mesh and their size will be dependent on the length of the vector. Their direction will be the “direction” of the vector

Returns

arrows – Active scalars represented as arrows.

Return type

pyvista.PolyData

property bounds

Return the bounding box of this dataset.

The form is: (xmin,xmax, ymin,ymax, zmin,zmax).

cast_to_unstructured_grid()

Get a new representation of this object as an pyvista.UnstructuredGrid.

property cell_arrays

Return the all cell arrays.

property center

Return the center of the bounding box.

clear_arrays()

Remove all arrays from point/cell/field data.

clear_cell_arrays()

Remove all cell arrays.

clear_point_arrays()

Remove all point arrays.

clear_textures()

Clear the textures from this mesh.

copy_meta_from(ido)

Copy pyvista meta data onto this object from another object.

property extent

Return the range of the bounding box.

get_array(name, preference='cell', info=False)

Search both point, cell and field data for an array.

get_data_range(arr=None, preference='cell')

Get the non-NaN min and max of a named array.

Parameters
  • arr (str, np.ndarray, optional) – The name of the array to get the range. If None, the active scalars is used

  • preference (str, optional) – When scalars is specified, this is the perfered array type to search for in the dataset. Must be either 'point', 'cell', or 'field'.

property length

Return the length of the diagonal of the bounding box.

property n_arrays

Return the number of arrays present in the dataset.

property n_cells

Return the number of cells in the entire dataset.

property n_points

Return the number of points in the entire dataset.

property n_scalars

Return the number of scalars.

DEPRECATED: Please use n_arrays instead.

property number_of_cells

Return the number of cells.

property number_of_points

Return the number of points.

overwrite(mesh)

Overwrite this mesh inplace with the new mesh’s geometries and data.

Parameters

mesh (vtk.vtkDataSet) – The overwriting mesh.

plot(off_screen=None, full_screen=False, screenshot=None, interactive=True, cpos=None, window_size=None, show_bounds=False, show_axes=True, notebook=None, background=None, text='', return_img=False, eye_dome_lighting=False, use_panel=None, volume=False, parallel_projection=False, **kwargs)

Plot a vtk or numpy object.

Parameters
  • item (vtk or numpy object) – VTK object or numpy array to be plotted.

  • off_screen (bool) – Plots off screen when True. Helpful for saving screenshots without a window popping up.

  • full_screen (bool, optional) – Opens window in full screen. When enabled, ignores window_size. Default False.

  • screenshot (str or bool, optional) –

    Saves screenshot to file when enabled. See: help(pyvistanterface.Plotter.screenshot). Default disabled.

    When True, takes screenshot and returns numpy array of image.

  • window_size (list, optional) – Window size in pixels. Defaults to [1024, 768]

  • show_bounds (bool, optional) – Shows mesh bounds when True. Default False. Alias show_grid also accepted.

  • notebook (bool, optional) – When True, the resulting plot is placed inline a jupyter notebook. Assumes a jupyter console is active.

  • show_axes (bool, optional) – Shows a vtk axes widget. Enabled by default.

  • text (str, optional) – Adds text at the bottom of the plot.

  • volume (bool, optional) – Use the add_volume method for volume rendering.

  • **kwargs (optional keyword arguments) – See help(Plotter.add_mesh) for additional options.

Returns

  • cpos (list) – List of camera position, focal point, and view up.

  • img (numpy.ndarray) – Array containing pixel RGB and alpha. Sized: [Window height x Window width x 3] for transparent_background=False [Window height x Window width x 4] for transparent_background=True Returned only when screenshot enabled

property point_arrays

Return the all point arrays.

property points

Return a pointer to the points as a numpy object.

points_to_double()

Make points double precision.

property quality

Return cell quality using PyANSYS.

Computes the minimum scaled jacobian of each cell. Cells that have values below 0 are invalid for a finite element analysis.

Note

This casts the input to an unstructured grid

Returns

cellquality – Minimum scaled jacobian of each cell. Ranges from -1 to 1.

Return type

np.ndarray

Notes

Requires pyansys to be installed.

rename_array(old_name, new_name, preference='cell')

Change array name by searching for the array then renaming it.

rename_scalar(old_name, new_name, preference='cell')

Change an array name by searching for the array then renaming it.

DEPRECATED: please use .rename_array instead.

rotate_x(angle)

Rotate mesh about the x-axis.

Parameters

angle (float) – Angle in degrees to rotate about the x-axis.

rotate_y(angle)

Rotate mesh about the y-axis.

Parameters

angle (float) – Angle in degrees to rotate about the y-axis.

rotate_z(angle)

Rotate mesh about the z-axis.

Parameters

angle (float) – Angle in degrees to rotate about the z-axis.

property scalar_names

Return the array names.

DEPRECATED: Please use array_names instead.

set_active_scalar(name, preference='cell')

Find the scalars by name and appropriately sets it as active.

To deactivate any active scalars, pass None as the name.

set_active_scalars(name, preference='cell')

Find the scalars by name and appropriately sets it as active.

To deactivate any active scalars, pass None as the name.

set_active_vectors(name, preference='point')

Find the vectors by name and appropriately sets it as active.

To deactivate any active scalars, pass None as the name.

property t_coords

Return the active texture coordinates on the points.

property textures

Return a dictionary to hold compatible vtk.vtkTexture objects.

When casting back to a VTK dataset or filtering this dataset, these textures will not be passed.

transform(trans)

Compute a transformation in place using a 4x4 transform.

Parameters

trans (vtk.vtkMatrix4x4, vtk.vtkTransform, or np.ndarray) – Accepts a vtk transformation object or a 4x4 transformation matrix.

translate(xyz)

Translate the mesh.

Parameters

xyz (list or np.ndarray) – Length 3 list or array.

property vectors

Return active vectors.

property volume

Return the mesh volume.

Returns

volume – Total volume of the mesh.

Return type

float