holoviews.data Package#
data
Package#
- class holoviews.core.data.DataConversion(element)[source]#
Bases:
object
DataConversion is a very simple container object which can be given an existing Dataset Element and provides methods to convert the Dataset into most other Element types.
- class holoviews.core.data.Dataset(data=None, kdims=None, vdims=None, **kwargs)[source]#
Bases:
Element
Dataset provides a general baseclass for Element types that contain structured data and supports a range of data formats.
The Dataset class supports various methods offering a consistent way of working with the stored data regardless of the storage format used. These operations include indexing, selection and various ways of aggregating or collapsing the data with a supplied function.
Parameter Definitions
Parameters inherited from:
holoviews.core.dimension.LabelledData
: labelholoviews.core.dimension.Dimensioned
: cdims, kdims, vdimsgroup = String(constant=True, default='Dataset', label='Group')
A string describing the data wrapped by the object.
datatype = List(bounds=(0, None), default=['dataframe', 'dictionary', 'grid', 'xarray', 'multitabular', 'spatialpandas', 'dask_spatialpandas', 'dask', 'cuDF', 'array', 'ibis'], label='Datatype')
A priority list of the data types to be used for storage on the .data attribute. If the input supplied to the element constructor cannot be put into the requested format, the next format listed will be used until a suitable format is found (or the data fails to be understood).
- add_dimension(dimension, dim_pos, dim_val, vdim=False, **kwargs)[source]#
Adds a dimension and its values to the Dataset
Requires the dimension name or object, the desired position in the key dimensions and a key value scalar or array of values, matching the length or shape of the Dataset.
Parameters#
- dimension
Dimension or dimension spec to add
- dim_posint
Integer index to insert dimension at
- dim_valscalar or ndarray
Dimension value(s) to add
- vdim
Disabled, this type does not have value dimensions
- **kwargs
Keyword arguments passed to the cloned element
Returns#
Cloned object containing the new dimension
- aggregate(dimensions=None, function=None, spreadfn=None, **kwargs)[source]#
Aggregates data on the supplied dimensions.
Aggregates over the supplied key dimensions with the defined function or dim_transform specified as a tuple of the transformed dimension name and dim transform.
Parameters#
- dimensions
Dimension(s) to aggregate on Default to all key dimensions
- function
Aggregation function or transform to apply Supports both simple functions and dimension transforms
- spreadfn
Secondary reduction to compute value spread Useful for computing a confidence interval, spread, or standard deviation.
- **kwargs
Keyword arguments either passed to the aggregation function or to create new names for the transformed variables
Returns#
Returns the aggregated Dataset
- array(dimensions=None)[source]#
Convert dimension values to columnar array.
Parameters#
- dimensions
List of dimensions to return
Returns#
Array of columns corresponding to each dimension
- clone(data=None, shared_data=True, new_type=None, link=True, *args, **overrides)[source]#
Clones the object, overriding data and parameters.
Parameters#
- data
New data replacing the existing data
- shared_databool, optional
Whether to use existing data
- new_typeoptional
Type to cast object to
- linkbool, optional
Whether clone should be linked Determines whether Streams and Links attached to original object will be inherited.
- *args
Additional arguments to pass to constructor
- **overrides
New keyword arguments to pass to constructor
Returns#
Cloned object
- closest(coords=None, **kwargs)[source]#
Snaps coordinate(s) to closest coordinate in Dataset
Parameters#
- coords
List of coordinates expressed as tuples
- **kwargs
Coordinates defined as keyword pairs
Returns#
List of tuples of the snapped coordinates
Raises#
- NotImplementedError
Raised if snapping is not supported
- columns(dimensions=None)[source]#
Convert dimension values to a dictionary.
Returns a dictionary of column arrays along each dimension of the element.
Parameters#
- dimensions
Dimensions to return as columns
Returns#
Dictionary of arrays for each dimension
- compute()[source]#
Computes the data to a data format that stores the daata in memory, e.g. a Dask dataframe or array is converted to a Pandas DataFrame or NumPy array.
Returns#
Dataset with the data stored in in-memory format
- property dataset#
The Dataset that this object was created from
- property ddims#
The list of deep dimensions
- dframe(dimensions=None, multi_index=False)[source]#
Convert dimension values to DataFrame.
Returns a pandas dataframe of columns along each dimension, either completely flat or indexed by key dimensions.
Parameters#
- dimensions
Dimensions to return as columns
- multi_index
Convert key dimensions to (multi-)index
Returns#
DataFrame of columns corresponding to each dimension
- dimension_values(dimension, expanded=True, flat=True)[source]#
Return the values along the requested dimension.
Parameters#
- dimension
The dimension to return values for
- expandedbool, optional
Whether to expand values Whether to return the expanded values, behavior depends on the type of data:
Columnar: If false returns unique values
Geometry: If false returns scalar values per geometry
Gridded: If false returns 1D coordinates
- flatbool, optional
Whether to flatten array
Returns#
NumPy array of values along the requested dimension
- dimensions(selection='all', label=False)[source]#
Lists the available dimensions on the object
Provides convenient access to Dimensions on nested Dimensioned objects. Dimensions can be selected by their type, i.e. ‘key’ or ‘value’ dimensions. By default ‘all’ dimensions are returned.
Parameters#
- selectionType of dimensions to return
The type of dimension, i.e. one of ‘key’, ‘value’, ‘constant’ or ‘all’.
- labelWhether to return the name, label or Dimension
Whether to return the Dimension objects (False), the Dimension names (True/’name’) or labels (‘label’).
Returns#
List of Dimension objects or their names or labels
- get_dimension(dimension, default=None, strict=False) Dimension | None [source]#
Get a Dimension object by name or index.
Parameters#
dimension : Dimension to look up by name or integer index default : optional
Value returned if Dimension not found
- strictbool, optional
Raise a KeyError if not found
Returns#
Dimension object for the requested dimension or default
- get_dimension_index(dimension)[source]#
Get the index of the requested dimension.
Parameters#
- dimension
Dimension to look up by name or by index
Returns#
Integer index of the requested dimension
- get_dimension_type(dim)[source]#
Get the type of the requested dimension.
Type is determined by Dimension.type attribute or common type of the dimension values, otherwise None.
Parameters#
- dimension
Dimension to look up by name or by index
Returns#
Declared type of values along the dimension
- groupby(dimensions=None, container_type=<class 'holoviews.core.spaces.HoloMap'>, group_type=None, dynamic=False, **kwargs)[source]#
Groups object by one or more dimensions
Applies groupby operation over the specified dimensions returning an object of type container_type (expected to be dictionary-like) containing the groups.
Parameters#
- dimensions
Dimension(s) to group by
- container_type
Type to cast group container to
- group_type
Type to cast each group to
- dynamic
Whether to return a DynamicMap
- **kwargs
Keyword arguments to pass to each group
Returns#
Returns object of supplied container_type containing the groups. If dynamic=True returns a DynamicMap instead.
- hist(dimension=None, num_bins=20, bin_range=None, adjoin=True, **kwargs)[source]#
Computes and adjoins histogram along specified dimension(s).
Defaults to first value dimension if present otherwise falls back to first key dimension.
Parameters#
- dimension
Dimension(s) to compute histogram on
- num_binsint, optional
Number of bins
- bin_rangetuple, optional
Lower and upper bounds of bins
- adjoinbool, optional
Whether to adjoin histogram
Returns#
AdjointLayout of element and histogram or just the histogram
- property iloc#
Returns iloc indexer with support for columnar indexing.
Returns an iloc object providing a convenient interface to slice and index into the Dataset using row and column indices. Allow selection by integer index, slice and list of integer indices and boolean arrays.
Examples :
Index the first row and column:
dataset.iloc[0, 0]
Select rows 1 and 2 with a slice:
dataset.iloc[1:3, :]
Select with a list of integer coordinates:
dataset.iloc[[0, 2, 3]]
- map(map_fn, specs=None, clone=True)[source]#
Map a function to all objects matching the specs
Recursively replaces elements using a map function when the specs apply, by default applies to all objects, e.g. to apply the function to all contained Curve objects:
dmap.map(fn, hv.Curve)
Parameters#
map_fn : Function to apply to each object specs : List of specs to match
List of types, functions or type[.group][.label] specs to select objects to return, by default applies to all objects.
- clone
Whether to clone the object or transform inplace
Returns#
Returns the object after the map_fn has been applied
- matches(spec)[source]#
Whether the spec applies to this object.
Parameters#
- specA function, spec or type to check for a match
- A ‘type[[.group].label]’ string which is compared
against the type, group and label of this object
- A function which is given the object and returns
a boolean.
An object type matched using isinstance.
Returns#
- bool
Whether the spec matched this object.
- property ndloc#
Returns ndloc indexer with support for gridded indexing.
Returns an ndloc object providing nd-array like indexing for gridded datasets. Follows NumPy array indexing conventions, allowing for indexing, slicing and selecting a list of indices on multi-dimensional arrays using integer indices. The order of array indices is inverted relative to the Dataset key dimensions, e.g. an Image with key dimensions ‘x’ and ‘y’ can be indexed with
image.ndloc[iy, ix]
, whereiy
andix
are integer indices along the y and x dimensions.Examples :
Index value in 2D array:
dataset.ndloc[3, 1]
Slice along y-axis of 2D array:
dataset.ndloc[2:5, :]
Vectorized (non-orthogonal) indexing along x- and y-axes:
dataset.ndloc[[1, 2, 3], [0, 2, 3]]
- options(*args, clone=True, **kwargs)[source]#
Applies simplified option definition returning a new object.
Applies options on an object or nested group of objects in a flat format returning a new object with the options applied. If the options are to be set directly on the object a simple format may be used, e.g.:
obj.options(cmap=’viridis’, show_title=False)
If the object is nested the options must be qualified using a type[.group][.label] specification, e.g.:
obj.options(‘Image’, cmap=’viridis’, show_title=False)
or using:
obj.options({‘Image’: dict(cmap=’viridis’, show_title=False)})
Identical to the .opts method but returns a clone of the object by default.
Parameters#
- *args: Sets of options to apply to object
Supports a number of formats including lists of Options objects, a type[.group][.label] followed by a set of keyword options to apply and a dictionary indexed by type[.group][.label] specs.
- backendoptional
Backend to apply options to Defaults to current selected backend
- clonebool, optional
Whether to clone object Options can be applied inplace with clone=False
- **kwargs: Keywords of options
Set of options to apply to the object
Returns#
Returns the cloned object with the options applied
- persist()[source]#
Persists the results of a lazy data interface to memory to speed up data manipulation and visualization. If the particular data backend already holds the data in memory this is a no-op. Unlike the compute method this maintains the same data type.
Returns#
Dataset with the data persisted to memory
- property pipeline#
Chain operation that evaluates the sequence of operations that was used to create this object, starting with the Dataset stored in dataset property
- range(dim, data_range=True, dimension_range=True)[source]#
Return the lower and upper bounds of values along dimension.
Parameters#
- dim
The dimension to compute the range on.
- data_rangebool
Compute range from data values
- dimension_rangebool
Include Dimension ranges Whether to include Dimension range and soft_range in range calculation
Returns#
Tuple containing the lower and upper bound
- reduce(dimensions=None, function=None, spreadfn=None, **reductions)[source]#
Applies reduction along the specified dimension(s).
Allows reducing the values along one or more key dimension with the supplied function. Supports two signatures:
Reducing with a list of dimensions, e.g.:
ds.reduce([‘x’], np.mean)
Defining a reduction using keywords, e.g.:
ds.reduce(x=np.mean)
Parameters#
- dimensions
Dimension(s) to apply reduction on Defaults to all key dimensions
- function
Reduction operation to apply, e.g. numpy.mean
- spreadfn
Secondary reduction to compute value spread Useful for computing a confidence interval, spread, or standard deviation.
- **reductions
Keyword argument defining reduction Allows reduction to be defined as keyword pair of dimension and function
Returns#
The Dataset after reductions have been applied.
- reindex(kdims=None, vdims=None)[source]#
Reindexes Dataset dropping static or supplied kdims
Creates a new object with a reordered or reduced set of key dimensions. By default drops all non-varying key dimensions.x
Parameters#
- kdimsoptional
New list of key dimensionsx
- vdimsoptional
New list of value dimensions
Returns#
Reindexed object
- relabel(label=None, group=None, depth=0)[source]#
Clone object and apply new group and/or label.
Applies relabeling to children up to the supplied depth.
Parameters#
- labelstr, optional
New label to apply to returned object
- groupstr, optional
New group to apply to returned object
- depthint, optional
Depth to which relabel will be applied If applied to container allows applying relabeling to contained objects up to the specified depth
Returns#
Returns relabelled object
- sample(samples=None, bounds=None, closest=True, **kwargs)[source]#
Samples values at supplied coordinates.
Allows sampling of element with a list of coordinates matching the key dimensions, returning a new object containing just the selected samples. Supports multiple signatures:
Sampling with a list of coordinates, e.g.:
ds.sample([(0, 0), (0.1, 0.2), …])
Sampling a range or grid of coordinates, e.g.:
1D : ds.sample(3) 2D : ds.sample((3, 3))
Sampling by keyword, e.g.:
ds.sample(x=0)
Parameters#
samples : List of nd-coordinates to sample bounds
Bounds of the region to sample Defined as two-tuple for 1D sampling and four-tuple for 2D sampling.
- closest
Whether to snap to closest coordinates
- **kwargs
Coordinates specified as keyword pairs Keywords of dimensions and scalar coordinates
Returns#
Element containing the sampled coordinates
- select(selection_expr=None, selection_specs=None, **selection)[source]#
Applies selection by dimension name
Applies a selection along the dimensions of the object using keyword arguments. The selection may be narrowed to certain objects using selection_specs. For container objects the selection will be applied to all children as well.
Selections may select a specific value, slice or set of values:
- value: Scalar values will select rows along with an exact
match, e.g.:
ds.select(x=3)
- slice: Slices may be declared as tuples of the upper and
lower bound, e.g.:
ds.select(x=(0, 3))
- values: A list of values may be selected using a list or
set, e.g.:
ds.select(x=[0, 1, 2])
predicate expression: A holoviews.dim expression, e.g.:
from holoviews import dim ds.select(selection_expr=dim(‘x’) % 2 == 0)
Parameters#
- selection_exprholoviews.dim predicate expression
specifying selection.
- selection_specsList of specs to match on
A list of types, functions, or type[.group][.label] strings specifying which objects to apply the selection on.
- **selection: Dictionary declaring selections by dimension
Selections can be scalar values, tuple ranges, lists of discrete values and boolean arrays
Returns#
Returns an Dimensioned object containing the selected data or a scalar if a single value was selected
- property shape#
Returns the shape of the data.
- sort(by=None, reverse=False)[source]#
Sorts the data by the values along the supplied dimensions.
Parameters#
- by
Dimension(s) to sort by
- reversebool, optional
Reverse sort order
Returns#
Sorted Dataset
- property to#
Returns the conversion interface with methods to convert Dataset
- transform(*args, **kwargs)[source]#
Transforms the Dataset according to a dimension transform.
Transforms may be supplied as tuples consisting of the dimension(s) and the dim transform to apply or keyword arguments mapping from dimension(s) to dim transforms. If the arg or kwarg declares multiple dimensions the dim transform should return a tuple of values for each.
A transform may override an existing dimension or add a new one in which case it will be added as an additional value dimension.
Parameters#
- args
Specify the output arguments and transforms as a tuple of dimension specs and dim transforms
- dropbool
Whether to drop all variables not part of the transform
- keep_indexbool
- Whether to keep indexes
Whether to apply transform on datastructure with index, e.g. pandas.Series or xarray.DataArray, (important for dask datastructures where index may be required to align datasets).
- kwargs
Specify new dimensions in the form new_dim=dim_transform
Returns#
Transformed dataset with new dimensions
- traverse(fn=None, specs=None, full_breadth=True)[source]#
Traverses object returning matching items Traverses the set of children of the object, collecting the all objects matching the defined specs. Each object can be processed with the supplied function.
Parameters#
- fnfunction, optional
Function applied to matched objects
- specsList of specs to match
Specs must be types, functions or type[.group][.label] specs to select objects to return, by default applies to all objects.
- full_breadthWhether to traverse all objects
Whether to traverse the full set of objects on each container or only the first.
Returns#
- list
List of objects that matched
- class holoviews.core.data.PipelineMeta(classname, bases, classdict)[source]#
Bases:
ParameterizedMetaclass
- property abstract#
Return True if the class has an attribute __abstract set to True. Subclasses will return False unless they themselves have __abstract set to true. This mechanism allows a class to declare itself to be abstract (e.g. to avoid it being offered as an option in a GUI), without the “abstract” property being inherited by its subclasses (at least one of which is presumably not abstract).
- get_param_descriptor(param_name)[source]#
Goes up the class hierarchy (starting from the current class) looking for a Parameter class attribute param_name. As soon as one is found as a class attribute, that Parameter is returned along with the class in which it is declared.
- mro()#
Return a type’s method resolution order.
- holoviews.core.data.concat(datasets, datatype=None)[source]#
Concatenates collection of datasets along NdMapping dimensions.
Concatenates multiple datasets wrapped in an NdMapping type along all of its dimensions. Before concatenation all datasets are cast to the same datatype, which may be explicitly defined or implicitly derived from the first datatype that is encountered. For columnar data concatenation adds the columns for the dimensions being concatenated along and then concatenates all the old and new columns. For gridded data a new axis is created for each dimension being concatenated along and then hierarchically concatenates along each dimension.
Parameters#
- datasets
NdMapping of Datasets to concatenate
- datatype
Datatype to cast data to before concatenation
Returns#
Concatenated dataset
array
Module#
- class holoviews.core.data.array.ArrayInterface(*, name)[source]#
Bases:
Interface
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
cudf
Module#
- class holoviews.core.data.cudf.cuDFInterface(*, name)[source]#
Bases:
PandasInterface
The cuDFInterface allows a Dataset objects to wrap a cuDF DataFrame object. Using cuDF allows working with columnar data on a GPU. Most operations leave the data in GPU memory, however to plot the data it has to be loaded into memory.
The cuDFInterface covers almost the complete API exposed by the PandasInterface with two notable exceptions:
Aggregation and groupby do not have a consistent sort order (see rapidsai/cudf#4237)
Not all functions can be easily applied to a cuDF so some functions applied with aggregate and reduce will not work.
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
dask
Module#
- class holoviews.core.data.dask.DaskInterface(*, name)[source]#
Bases:
PandasInterface
The DaskInterface allows a Dataset objects to wrap a dask DataFrame object. Using dask allows loading data lazily and performing out-of-core operations on the data, making it possible to work on datasets larger than memory.
The DaskInterface covers almost the complete API exposed by the PandasInterface with two notable exceptions:
Sorting is not supported and any attempt at sorting will be ignored with an warning.
Dask does not easily support adding a new column to an existing dataframe unless it is a scalar, add_dimension will therefore error when supplied a non-scalar value.
Not all functions can be easily applied to a dask dataframe so some functions applied with aggregate and reduce will not work.
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod iloc(dataset, index)[source]#
Dask does not support iloc, therefore iloc will execute the call graph and lose the laziness of the operation.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
dictionary
Module#
- class holoviews.core.data.dictionary.DictInterface(*, name)[source]#
Bases:
Interface
Interface for simple dictionary-based dataset format. The dictionary keys correspond to the column (i.e. dimension) names and the values are collections representing the values in that column.
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
grid
Module#
- class holoviews.core.data.grid.GridInterface(*, name)[source]#
Bases:
DictInterface
Interface for simple dictionary-based dataset format using a compressed representation that uses the cartesian product between key dimensions. As with DictInterface, the dictionary keys correspond to the column (i.e. dimension) names and the values are NumPy arrays representing the values in that column.
To use this compressed format, the key dimensions must be orthogonal to one another with each key dimension specifying an axis of the multidimensional space occupied by the value dimension data. For instance, given an temperature recordings sampled regularly across the earth surface, a list of N unique latitudes and M unique longitudes can specify the position of NxM temperature samples.
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod canonicalize(dataset, data, data_coords=None, virtual_coords=None)[source]#
Canonicalize takes an array of values as input and reorients and transposes it to match the canonical format expected by plotting functions. In certain cases the dimensions defined via the kdims of an Element may not match the dimensions of the underlying data. A set of data_coords may be passed in to define the dimensionality of the data, which can then be used to np.squeeze the data to remove any constant dimensions. If the data is also irregular, i.e. contains multi-dimensional coordinates, a set of virtual_coords can be supplied, required by some interfaces (e.g. xarray) to index irregular datasets with a virtual integer index. This ensures these coordinates are not simply dropped.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod coords(dataset, dim, ordered=False, expanded=False, edges=False)[source]#
Returns the coordinates along a dimension. Ordered ensures coordinates are in ascending order and expanded creates ND-array matching the dimensionality of the dataset.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
- classmethod sample(dataset, samples=None)[source]#
Samples the gridded data into dataset of samples.
ibis
Module#
- class holoviews.core.data.ibis.IbisInterface(*, name)[source]#
Bases:
Interface
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
image
Module#
- class holoviews.core.data.image.ImageInterface(*, name)[source]#
Bases:
GridInterface
Interface for 2 or 3D arrays representing images of raw luminance values, RGB values or HSV values.
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod canonicalize(dataset, data, data_coords=None, virtual_coords=None)[source]#
Canonicalize takes an array of values as input and reorients and transposes it to match the canonical format expected by plotting functions. In certain cases the dimensions defined via the kdims of an Element may not match the dimensions of the underlying data. A set of data_coords may be passed in to define the dimensionality of the data, which can then be used to np.squeeze the data to remove any constant dimensions. If the data is also irregular, i.e. contains multi-dimensional coordinates, a set of virtual_coords can be supplied, required by some interfaces (e.g. xarray) to index irregular datasets with a virtual integer index. This ensures these coordinates are not simply dropped.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod coords(dataset, dim, ordered=False, expanded=False, edges=False)[source]#
Returns the coordinates along a dimension. Ordered ensures coordinates are in ascending order and expanded creates ND-array matching the dimensionality of the dataset.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
- classmethod sample(dataset, samples=None)[source]#
Sample the Raster along one or both of its dimensions, returning a reduced dimensionality type, which is either a ItemTable, Curve or Scatter. If two dimension samples and a new_xaxis is provided the sample will be the value of the sampled unit indexed by the value in the new_xaxis tuple.
- classmethod select(dataset, selection_mask=None, **selection)[source]#
Slice the underlying numpy array in sheet coordinates.
- classmethod select_mask(dataset, selection)[source]#
Given a Dataset object and a dictionary with dimension keys and selection keys (i.e. tuple ranges, slices, sets, lists, or literals) return a boolean mask over the rows in the Dataset object that have been selected.
interface
Module#
- exception holoviews.core.data.interface.DataError(msg, interface=None)[source]#
Bases:
ValueError
DataError is raised when the data cannot be interpreted
- add_note()#
Exception.add_note(note) – add a note to the exception
- with_traceback()#
Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
- class holoviews.core.data.interface.Interface(*, name)[source]#
Bases:
Parameterized
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- class holoviews.core.data.interface.iloc(dataset)[source]#
Bases:
Accessor
iloc is small wrapper object that allows row, column based indexing into a Dataset using the
.iloc
property. It supports the usual numpy and pandas iloc indexing semantics including integer indices, slices, lists and arrays of values. For more information see theDataset.iloc
property docstring.
- class holoviews.core.data.interface.ndloc(dataset)[source]#
Bases:
Accessor
ndloc is a small wrapper object that allows ndarray-like indexing for gridded Datasets using the
.ndloc
property. It supports the standard NumPy ndarray indexing semantics including integer indices, slices, lists and arrays of values. For more information see theDataset.ndloc
property docstring.
multipath
Module#
- class holoviews.core.data.multipath.MultiInterface(*, name)[source]#
Bases:
Interface
MultiInterface allows wrapping around a list of tabular datasets including dataframes, the columnar dictionary format or 2D tabular NumPy arrays. Using the split method the list of tabular data can be split into individual datasets.
The interface makes the data appear a list of tabular datasets as a single dataset. The interface may be used to represent geometries so the behavior depends on the type of geometry being represented.
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isscalar(dataset, dim, per_geom=False)[source]#
Tests if dimension is scalar in each subpath.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
- classmethod length(dataset)[source]#
Returns the length of the multi-tabular dataset making it appear like a single array of concatenated subpaths separated by NaN values.
- classmethod select(dataset, selection_mask=None, **selection)[source]#
Applies selectiong on all the subpaths.
- classmethod select_mask(dataset, selection)[source]#
Given a Dataset object and a dictionary with dimension keys and selection keys (i.e. tuple ranges, slices, sets, lists, or literals) return a boolean mask over the rows in the Dataset object that have been selected.
- classmethod select_paths(dataset, index)[source]#
Allows selecting paths with usual NumPy slicing index.
- classmethod shape(dataset)[source]#
Returns the shape of all subpaths, making it appear like a single array of concatenated subpaths separated by NaN values.
- holoviews.core.data.multipath.ensure_ring(geom, values=None)[source]#
Ensure the (multi-)geometry forms a ring.
Checks the start- and end-point of each geometry to ensure they form a ring, if not the start point is inserted at the end point. If a values array is provided (which must match the geometry in length) then the insertion will occur on the values instead, ensuring that they will match the ring geometry.
Parameters#
- geom
2-D array of geometry coordinates
- values
Optional array of values
Returns#
Array where values have been inserted and ring closing indexes
pandas
Module#
- class holoviews.core.data.pandas.PandasAPI[source]#
Bases:
object
This class is used to describe the interface as having a pandas-like API.
The reason to have this class is that it is not always possible to directly inherit from the PandasInterface.
- This class should not have any logic as it should be used like:
- if issubclass(interface, PandasAPI):
…
- class holoviews.core.data.pandas.PandasInterface(*, name)[source]#
-
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
spatialpandas
Module#
- class holoviews.core.data.spatialpandas.SpatialPandasInterface(*, name)[source]#
Bases:
MultiInterface
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- base_interface[source]#
alias of
PandasInterface
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isscalar(dataset, dim, per_geom=False)[source]#
Tests if dimension is scalar in each subpath.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
- classmethod length(dataset)[source]#
Returns the length of the multi-tabular dataset making it appear like a single array of concatenated subpaths separated by NaN values.
- classmethod select(dataset, selection_mask=None, **selection)[source]#
Applies selectiong on all the subpaths.
- classmethod select_mask(dataset, selection)[source]#
Given a Dataset object and a dictionary with dimension keys and selection keys (i.e. tuple ranges, slices, sets, lists, or literals) return a boolean mask over the rows in the Dataset object that have been selected.
- classmethod select_paths(dataset, index)[source]#
Allows selecting paths with usual NumPy slicing index.
- classmethod shape(dataset)[source]#
Returns the shape of all subpaths, making it appear like a single array of concatenated subpaths separated by NaN values.
- holoviews.core.data.spatialpandas.from_multi(eltype, data, kdims, vdims)[source]#
Converts list formats into spatialpandas.GeoDataFrame.
Parameters#
- eltype
Element type to convert
- data
The original data
- kdims
The declared key dimensions
- vdims
The declared value dimensions
Returns#
A GeoDataFrame containing in the list based format.
- holoviews.core.data.spatialpandas.from_shapely(data)[source]#
Converts shapely based data formats to spatialpandas.GeoDataFrame.
Parameters#
- data
A list of shapely objects or dictionaries containing shapely objects
Returns#
A GeoDataFrame containing the shapely geometry data.
- holoviews.core.data.spatialpandas.geom_array_to_array(geom_array, index, expand=False, geom_type=None)[source]#
Converts spatialpandas extension arrays to a flattened array.
Parameters#
geom : spatialpandas geometry index
The column index to return
Returns#
Flattened array
- holoviews.core.data.spatialpandas.geom_to_array(geom, index=None, multi=False, geom_type=None)[source]#
Converts spatialpandas geometry to an array.
Parameters#
geom : spatialpandas geometry index
The column index to return
- multi
Whether to concatenate multiple arrays or not
Returns#
Array or list of arrays.
- holoviews.core.data.spatialpandas.geom_to_holes(geom)[source]#
Extracts holes from spatialpandas Polygon geometries.
Parameters#
geom : spatialpandas geometry
Returns#
List of arrays representing holes
- holoviews.core.data.spatialpandas.get_geom_type(gdf, col)[source]#
Return the HoloViews geometry type string for the geometry column.
Parameters#
- gdf
The GeoDataFrame to get the geometry from
- col
The geometry column
Returns#
A string representing the type of geometry
- holoviews.core.data.spatialpandas.get_value_array(data, dimension, expanded, keep_index, geom_col, is_points, geom_length=<function geom_length>)[source]#
Returns an array of values from a GeoDataFrame.
Parameters#
data : GeoDataFrame dimension
The dimension to get the values from
- expanded
Whether to expand the value array
- keep_index
Whether to return a Series
- geom_col
The column in the data that contains the geometries
- is_points
Whether the geometries are points
- geom_length
The function used to compute the length of each geometry
Returns#
An array containing the values along a dimension
- holoviews.core.data.spatialpandas.to_geom_dict(eltype, data, kdims, vdims, interface=None)[source]#
Converts data from any list format to a dictionary based format.
Parameters#
- eltype
Element type to convert
- data
The original data
- kdims
The declared key dimensions
- vdims
The declared value dimensions
Returns#
A list of dictionaries containing geometry coordinates and values.
- holoviews.core.data.spatialpandas.to_spatialpandas(data, xdim, ydim, columns=None, geom='point')[source]#
Converts list of dictionary format geometries to spatialpandas line geometries.
Parameters#
data : List of dictionaries representing individual geometries xdim
Name of x-coordinates column
- ydim
Name of y-coordinates column
columns : List of columns to add geom
The type of geometry
Returns#
A spatialpandas.GeoDataFrame version of the data
spatialpandas_dask
Module#
- class holoviews.core.data.spatialpandas_dask.DaskSpatialPandasInterface(*, name)[source]#
Bases:
SpatialPandasInterface
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- base_interface[source]#
alias of
DaskInterface
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isscalar(dataset, dim, per_geom=False)[source]#
Tests if dimension is scalar in each subpath.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
- classmethod length(dataset)[source]#
Returns the length of the multi-tabular dataset making it appear like a single array of concatenated subpaths separated by NaN values.
- classmethod select(dataset, selection_mask=None, **selection)[source]#
Applies selectiong on all the subpaths.
- classmethod select_mask(dataset, selection)[source]#
Given a Dataset object and a dictionary with dimension keys and selection keys (i.e. tuple ranges, slices, sets, lists, or literals) return a boolean mask over the rows in the Dataset object that have been selected.
- classmethod select_paths(dataset, index)[source]#
Allows selecting paths with usual NumPy slicing index.
- classmethod shape(dataset)[source]#
Returns the shape of all subpaths, making it appear like a single array of concatenated subpaths separated by NaN values.
util
Module#
xarray
Module#
- class holoviews.core.data.xarray.XArrayInterface(*, name)[source]#
Bases:
GridInterface
Parameter Definitions
- classmethod applies(obj)[source]#
Indicates whether the interface is designed specifically to handle the supplied object’s type. By default simply checks if the object is one of the types declared on the class, however if the type is expensive to import at load time the method may be overridden.
- classmethod as_dframe(dataset)[source]#
Returns the data of a Dataset as a dataframe avoiding copying if it already a dataframe type.
- classmethod canonicalize(dataset, data, data_coords=None, virtual_coords=None)[source]#
Canonicalize takes an array of values as input and reorients and transposes it to match the canonical format expected by plotting functions. In certain cases the dimensions defined via the kdims of an Element may not match the dimensions of the underlying data. A set of data_coords may be passed in to define the dimensionality of the data, which can then be used to np.squeeze the data to remove any constant dimensions. If the data is also irregular, i.e. contains multi-dimensional coordinates, a set of virtual_coords can be supplied, required by some interfaces (e.g. xarray) to index irregular datasets with a virtual integer index. This ensures these coordinates are not simply dropped.
- classmethod cast(datasets, datatype=None, cast_type=None)[source]#
Given a list of Dataset objects, cast them to the specified datatype (by default the format matching the current interface) with the given cast_type (if specified).
- classmethod concatenate(datasets, datatype=None, new_type=None)[source]#
Utility function to concatenate an NdMapping of Dataset objects.
- classmethod coords(dataset, dimension, ordered=False, expanded=False, edges=False)[source]#
Returns the coordinates along a dimension. Ordered ensures coordinates are in ascending order and expanded creates ND-array matching the dimensionality of the dataset.
- classmethod indexed(dataset, selection)[source]#
Given a Dataset object and selection to be applied returns boolean to indicate whether a scalar value has been indexed.
- classmethod isunique(dataset, dim, per_geom=False)[source]#
Compatibility method introduced for v1.13.0 to smooth over addition of per_geom kwarg for isscalar method.
- classmethod sample(dataset, samples=None)[source]#
Samples the gridded data into dataset of samples.