code: def create_actor_pts(pts, color, **kwargs):
      
      # Keyword arguments
      array_name = kwargs.get('name', "")
      array_index = kwargs.get('index', 0)
      point_size = kwargs.get('size', 5)
      point_sphere = kwargs.get('point_as_sphere', True)
  
      # Create points
      points = vtk.vtkPoints()
      points.SetData(pts)
  
      # Create a PolyData object and add points
      polydata = vtk.vtkPolyData()
      polydata.SetPoints(points)
  
      # Run vertex glyph filter on the points array
      vertex_filter = vtk.vtkVertexGlyphFilter()
      vertex_filter.SetInputData(polydata)
  
      # Map ploy data to the graphics primitives
      mapper = vtk.vtkPolyDataMapper()
      mapper.SetInputConnection(vertex_filter.GetOutputPort())
      mapper.SetArrayName(array_name)
      mapper.SetArrayId(array_index)
  
      # Create an actor and set its properties
      actor = vtk.vtkActor()
      actor.SetMapper(mapper)
      actor.GetProperty().SetColor(*color)
      actor.GetProperty().SetPointSize(point_size)
      actor.GetProperty().SetRenderPointsAsSpheres(point_sphere)
  
      # Return the actor
      return actor
docs: Creates a VTK actor for rendering scatter plots.
  
      :param pts: points
      :type pts: vtkFloatArray
      :param color: actor color
      :type color: list
      :return: a VTK actor
      :rtype: vtkActor