class_docstr: An internal class to manage filters/algorithms for uniform grid datasets.
class_docstr_tok: ["An","internal","class","to","manage","filters\/algorithms","for","uniform","grid","datasets","."]
docstr: Smooth the data with a Gaussian kernel.
  
  Parameters
  ----------
  radius_factor : float | sequence[float], default: 1.5
      Unitless factor to limit the extent of the kernel.
  
  std_dev : float | sequence[float], default: 2.0
      Standard deviation of the kernel in pixel units.
  
  scalars : str, optional
      Name of scalars to process. Defaults to currently active scalars.
  
  progress_bar : bool, default: False
      Display a progress bar to indicate progress.
  
  Returns
  -------
  pyvista.ImageData
      Uniform grid with smoothed scalars.
  
  Notes
  -----
  This filter only supports point data. Consider converting any cell data
  to point data using the :func:`cell_data_to_point_data()
  <pyvista.DataSetFilters.cell_data_to_point_data>` filter to convert any
  cell data to point data.
  
  Examples
  --------
  First, create sample data to smooth. Here, we use
  :func:`pyvista.perlin_noise() <pyvista.core.utilities.features.perlin_noise>`
  to create meaningful data.
  
  >>> import numpy as np
  >>> import pyvista as pv
  >>> noise = pv.perlin_noise(0.1, (2, 5, 8), (0, 0, 0))
  >>> grid = pv.sample_function(
  ...     noise, [0, 1, 0, 1, 0, 1], dim=(20, 20, 20)
  ... )
  >>> grid.plot(show_scalar_bar=False)
  
  Next, smooth the sample data.
  
  >>> smoothed = grid.gaussian_smooth()
  >>> smoothed.plot(show_scalar_bar=False)
  
  See :ref:`gaussian_smoothing_example` for a full example using this filter.
docstr_tok: ["Smooth","the","data","with","a","Gaussian","kernel",".","Parameters","--","--","--","--","--","radius_factor",":","float","|","sequence","[","float","]",",","default",":","1.5","Unitless","factor","to","limit","the","extent","of","the","kernel",".","std_dev",":","float","|","sequence","[","float","]",",","default",":","2.0","Standard","deviation","of","the","kernel","in","pixel","units",".","scalars",":","str",",","optional","Name","of","scalars","to","process",".","Defaults","to","currently","active","scalars",".","progress_bar",":","bool",",","default",":","False","Display","a","progress","bar","to","indicate","progress",".","Returns","--","--","--","-","pyvista.ImageData","Uniform","grid","with","smoothed","scalars",".","Notes","--","--","-","This","filter","only","supports","point","data",".","Consider","converting","any","cell","data","to","point","data","using","the",":","func",":","`","cell_data_to_point_data","(",")","<","pyvista.DataSetFilters.cell_data_to_point_data",">","`","filter","to","convert","any","cell","data","to","point","data",".","Examples","--","--","--","--","First",",","create","sample","data","to","smooth",".","Here",",","we","use",":","func",":","`","pyvista.perlin_noise","(",")","<","pyvista.core.utilities.features.perlin_noise",">","`","to","create","meaningful","data",".",">",">",">","import","numpy","as","np",">",">",">","import","pyvista","as","pv",">",">",">","noise","=","pv.perlin_noise","(","0.1",",","(","2",",","5",",","8",")",",","(","0",",","0",",","0",")",")",">",">",">","grid","=","pv.sample_function","(","...","noise",",","[","0",",","1",",","0",",","1",",","0",",","1","]",",","dim=","(","20",",","20",",","20",")","...",")",">",">",">","grid.plot","(","show_scalar_bar=False",")","Next",",","smooth","the","sample","data",".",">",">",">","smoothed","=","grid.gaussian_smooth","(",")",">",">",">","smoothed.plot","(","show_scalar_bar=False",")","See",":","ref",":","`","gaussian_smoothing_example","`","for","a","full","example","using","this","filter","."]
code: def gaussian_smooth(
      self,
      radius_factor=1.5,
      std_dev=2.0,
      scalars=None,
      progress_bar=False,
  ):
      """Smooth the data with a Gaussian kernel.
  
      Parameters
      ----------
      radius_factor : float | sequence[float], default: 1.5
          Unitless factor to limit the extent of the kernel.
  
      std_dev : float | sequence[float], default: 2.0
          Standard deviation of the kernel in pixel units.
  
      scalars : str, optional
          Name of scalars to process. Defaults to currently active scalars.
  
      progress_bar : bool, default: False
          Display a progress bar to indicate progress.
  
      Returns
      -------
      pyvista.ImageData
          Uniform grid with smoothed scalars.
  
      Notes
      -----
      This filter only supports point data. Consider converting any cell data
      to point data using the :func:`cell_data_to_point_data()
      <pyvista.DataSetFilters.cell_data_to_point_data>` filter to convert any
      cell data to point data.
  
      Examples
      --------
      First, create sample data to smooth. Here, we use
      :func:`pyvista.perlin_noise() <pyvista.core.utilities.features.perlin_noise>`
      to create meaningful data.
  
      >>> import numpy as np
      >>> import pyvista as pv
      >>> noise = pv.perlin_noise(0.1, (2, 5, 8), (0, 0, 0))
      >>> grid = pv.sample_function(
      ...     noise, [0, 1, 0, 1, 0, 1], dim=(20, 20, 20)
      ... )
      >>> grid.plot(show_scalar_bar=False)
  
      Next, smooth the sample data.
  
      >>> smoothed = grid.gaussian_smooth()
      >>> smoothed.plot(show_scalar_bar=False)
  
      See :ref:`gaussian_smoothing_example` for a full example using this filter.
  
      """
      alg = _vtk.vtkImageGaussianSmooth()
      alg.SetInputDataObject(self)
      if scalars is None:
          set_default_active_scalars(self)
          field, scalars = self.active_scalars_info
          if field.value == 1:
              raise ValueError(
                  "If `scalars` not given, active scalars must be point array."
              )
      else:
          field = self.get_array_association(
              scalars, preference="point"
          )
          if field.value == 1:
              raise ValueError(
                  "Can only process point data, given `scalars` are cell data."
              )
      alg.SetInputArrayToProcess(
          0, 0, 0, field.value, scalars
      )  # args: (idx, port, connection, field, name)
      if isinstance(radius_factor, collections.abc.Iterable):
          alg.SetRadiusFactors(radius_factor)
      else:
          alg.SetRadiusFactors(
              radius_factor, radius_factor, radius_factor
          )
      if isinstance(std_dev, collections.abc.Iterable):
          alg.SetStandardDeviations(std_dev)
      else:
          alg.SetStandardDeviations(std_dev, std_dev, std_dev)
      _update_alg(alg, progress_bar, "Performing Gaussian Smoothing")
      return _get_output(alg)
  
imports: import collections.abc
  from typing import Literal, Optional, cast
  import numpy
  import pyvista
  from pyvista.core import _vtk_core
  from pyvista.core.errors import AmbiguousDataError, MissingDataError
  from pyvista.core.filters import _get_output, _update_alg
  from pyvista.core.filters.data_set import DataSetFilters
  from pyvista.core.utilities.arrays import FieldAssociation, set_default_active_scalars
  from pyvista.core.utilities.helpers import wrap
  from pyvista.core.utilities.misc import abstract_class
label_desc: Use image node_id 1 for calling the ImageDataFilters obj's underlying member method code with example usage: obj.gaussian_smooth(radius_factor, std_dev, scalars, progress_bar) and returns: _get_output