parameters: (self, axis_index=None)
docstring: Sets any data for the given axis that is less than min[axis_index] or greater than max[axis_index]
          to nan so only the parts of the plot that are within the axes are visible.
          :param axis_index: the index of the axis being edited, 0 for x, 1 for y, 2 for z.
docstring_summary: Sets any data for the given axis that is less than min[axis_index] or greater than max[axis_index]
          to nan so only the parts of the plot that are within the axes are visible.
          :param axis_index: the index of the axis being edited, 0 for x, 1 for y, 2 for z.
docstring_tokens: Sets any data for the given axis that is less than min [ axis_index ] or greater than max [ axis_index ] to nan so only the parts of the plot that are within the axes are visible . : param axis_index : the index of the axis being edited 0 for x 1 for y 2 for z .
function: def _set_overflowing_data_to_nan(self, axis_index=None):
          """
          Sets any data for the given axis that is less than min[axis_index] or greater than max[axis_index]
          to nan so only the parts of the plot that are within the axes are visible.
          :param axis_index: the index of the axis being edited, 0 for x, 1 for y, 2 for z.
          """
  
          min_vals, max_vals = zip(self.get_xlim3d(),self.get_ylim3d(),self.get_zlim3d())
          if hasattr(self, 'original_data_surface'):
              if axis_index is None:
                  axis_index_list = [0,1,2]
              else:
                  axis_index_list = [axis_index]
  
              for axis_index in axis_index_list:
                  axis_data = self.original_data_surface[axis_index].copy()
                  axis_data[np.less(axis_data, min_vals[axis_index], where=~np.isnan(axis_data))] = np.nan
                  axis_data[np.greater(axis_data, max_vals[axis_index], where=~np.isnan(axis_data))] = np.nan
                  self.collections[0]._vec[axis_index] = axis_data
  
          if hasattr(self, 'original_data_wireframe'):
  
              all_data = copy.deepcopy(self.original_data_wireframe)
  
              for spectrum in range(len(all_data)):
                  spectrum_data = all_data[spectrum]
                  for point in range(len(spectrum_data)):
                      for axis in range(3):
                          if (np.less(spectrum_data[point][axis],min_vals[axis])
                                  or np.greater(spectrum_data[point][axis],max_vals[axis])):
                              all_data[spectrum][point] = np.repeat(np.nan,3)
  
              self.collections[0].set_segments(all_data)
function_tokens: def _set_overflowing_data_to_nan ( self , axis_index = None ) : min_vals , max_vals = zip ( self . get_xlim3d ( ) , self . get_ylim3d ( ) , self . get_zlim3d ( ) ) if hasattr ( self , 'original_data_surface' ) : if axis_index is None : axis_index_list = [ 0 , 1 , 2 ] else : axis_index_list = [ axis_index ] for axis_index in axis_index_list : axis_data = self . original_data_surface [ axis_index ] . copy ( ) axis_data [ np . less ( axis_data , min_vals [ axis_index ] , where = ~ np . isnan ( axis_data ) ) ] = np . nan axis_data [ np . greater ( axis_data , max_vals [ axis_index ] , where = ~ np . isnan ( axis_data ) ) ] = np . nan self . collections [ 0 ] . _vec [ axis_index ] = axis_data if hasattr ( self , 'original_data_wireframe' ) : all_data = copy . deepcopy ( self . original_data_wireframe ) for spectrum in range ( len ( all_data ) ) : spectrum_data = all_data [ spectrum ] for point in range ( len ( spectrum_data ) ) : for axis in range ( 3 ) : if ( np . less ( spectrum_data [ point ] [ axis ] , min_vals [ axis ] ) or np . greater ( spectrum_data [ point ] [ axis ] , max_vals [ axis ] ) ) : all_data [ spectrum ] [ point ] = np . repeat ( np . nan , 3 ) self . collections [ 0 ] . set_segments ( all_data )