class_docstr: Element is the atomic datastructure used to wrap some data with
  an associated visual representation, e.g. an element may
  represent a set of points, an image or a curve. Elements provide
  a common API for interacting with data of different types and
  define how the data map to a set of dimensions and how those
  map to the visual representation.
class_docstr_tok: ["Element","is","the","atomic","datastructure","used","to","wrap","some","data","with","an","associated","visual","representation",",","e.g",".","an","element","may","represent","a","set","of","points",",","an","image","or","a","curve",".","Elements","provide","a","common","API","for","interacting","with","data","of","different","types","and","define","how","the","data","map","to","a","set","of","dimensions","and","how","those","map","to","the","visual","representation","."]
docstr: 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)
  
  Args:
      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 element after reductions have been applied.
code: def reduce(
      self, dimensions=None, function=None, spreadfn=None, **reduction
  ):
      """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)
  
      Args:
          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 element after reductions have been applied.
      """
      if dimensions is None:
          dimensions = []
      raise NotImplementedError
  
imports: from itertools import groupby
  import numpy
  import pandas
  import param
  from .dimension import Dimensioned, ViewableElement, asdim
  from .layout import Composable, Layout, NdLayout
  from .ndmapping import NdMapping
  from .overlay import CompositeOverlay, NdOverlay, Overlayable
  from .spaces import GridSpace, HoloMap
  from .tree import AttrTree
  from .util import get_param_values
label_desc: Use image node_id 9 for calling the Element obj's underlying member method code with example usage: obj.reduce(dimensions, function, spreadfn) without return types