class_docstr: :orphan:
  .. warning:: This class is intended for internal use. The interface may change without warning.
  
  Holds collected information for a plotable dataset. 
  Numpy arrays containing x and y coordinates are available as ``dataset.x`` and ``dataset.y``.
  
  After a search has been performed, typically during a call to :func:`dataRect() <pyqtgraph.PlotDataset.dataRect>`, 
  ``dataset.containsNonfinite`` is `True` if any coordinate values are nonfinite (e.g. NaN or inf) or `False` if all 
  values are finite. If no search has been performed yet, ``dataset.containsNonfinite`` is `None`.
  
  For internal use in :class:`PlotDataItem <pyqtgraph.PlotDataItem>`, this class should not be instantiated when no data is available. 
class_docstr_tok: [":","orphan",":","..","warning",":",":","This","class","is","intended","for","internal","use",".","The","interface","may","change","without","warning",".","Holds","collected","information","for","a","plotable","dataset",".","Numpy","arrays","containing","x","and","y","coordinates","are","available","as","``","dataset.x","``","and","``","dataset.y","``",".","After","a","search","has","been","performed",",","typically","during","a","call","to",":","func",":","`","dataRect","(",")","<","pyqtgraph.PlotDataset.dataRect",">","`",",","``","dataset.containsNonfinite","``","is","`","True","`","if","any","coordinate","values","are","nonfinite","(","e.g",".","NaN","or","inf",")","or","`","False","`","if","all","values","are","finite",".","If","no","search","has","been","performed","yet",",","``","dataset.containsNonfinite","``","is","`","None","`",".","For","internal","use","in",":","class",":","`","PlotDataItem","<","pyqtgraph.PlotDataItem",">","`",",","this","class","should","not","be","instantiated","when","no","data","is","available","."]
docstr: Applies a logarithmic mapping transformation (base 10) if requested for the respective axis.
  This replaces the internal data. Values of ``-inf`` resulting from zeros in the original dataset are
  replaced by ``np.nan``.
  
  Parameters
  ----------
  logmode: tuple or list of two bool
      A `True` value requests log-scale mapping for the x and y axis (in this order).
docstr_tok: ["Applies","a","logarithmic","mapping","transformation","(","base","10",")","if","requested","for","the","respective","axis",".","This","replaces","the","internal","data",".","Values","of","``","-inf","``","resulting","from","zeros","in","the","original","dataset","are","replaced","by","``","np.nan","``",".","Parameters","--","--","--","--","--","logmode",":","tuple","or","list","of","two","bool","A","`","True","`","value","requests","log-scale","mapping","for","the","x","and","y","axis","(","in","this","order",")","."]
code: def applyLogMapping(self, logMode):
      """
      Applies a logarithmic mapping transformation (base 10) if requested for the respective axis.
      This replaces the internal data. Values of ``-inf`` resulting from zeros in the original dataset are
      replaced by ``np.nan``.
  
      Parameters
      ----------
      logmode: tuple or list of two bool
          A `True` value requests log-scale mapping for the x and y axis (in this order).
      """
      if logMode[0]:
          with warnings.catch_warnings():
              warnings.simplefilter("ignore", RuntimeWarning)
              self.x = np.log10(self.x)
          nonfinites = ~np.isfinite(self.x)
          if nonfinites.any():
              self.x[
                  nonfinites
              ] = np.nan  # set all non-finite values to NaN
              all_x_finite = False
          else:
              all_x_finite = True
          self.xAllFinite = all_x_finite
  
      if logMode[1]:
          with warnings.catch_warnings():
              warnings.simplefilter("ignore", RuntimeWarning)
              self.y = np.log10(self.y)
          nonfinites = ~np.isfinite(self.y)
          if nonfinites.any():
              self.y[
                  nonfinites
              ] = np.nan  # set all non-finite values to NaN
              all_y_finite = False
          else:
              all_y_finite = True
          self.yAllFinite = all_y_finite
  
imports: import math
  import warnings
  import bisect
  import numpy
  from ..None import debug
  from ..None import functions
  from ..None import getConfigOption
  from ..Qt import QtCore
  from .GraphicsObject import GraphicsObject
  from .PlotCurveItem import PlotCurveItem
  from .ScatterPlotItem import ScatterPlotItem
label_desc: Use image node_id 6 for calling the PlotDataset obj's underlying member method code with example usage: obj.applyLogMapping(logMode) without return types