class_docstr: **Bases:** :class:`GraphicsObject <pyqtgraph.GraphicsObject>`
  
  :class:`PlotDataItem` provides a unified interface for displaying plot curves, scatter plots, or both.
  It also contains methods to transform or decimate the original data before it is displayed. 
  
  As pyqtgraph's standard plotting object, ``plot()`` methods such as :func:`pyqtgraph.plot` and
  :func:`PlotItem.plot() <pyqtgraph.PlotItem.plot>` create instances of :class:`PlotDataItem`.
  
  While it is possible to use :class:`PlotCurveItem <pyqtgraph.PlotCurveItem>` or
  :class:`ScatterPlotItem <pyqtgraph.ScatterPlotItem>` individually, this is recommended only
  where performance is critical and the limited functionality of these classes is sufficient.
  
  ==================================  ==============================================
  **Signals:**
  sigPlotChanged(self)                Emitted when the data in this item is updated.
  sigClicked(self, ev)                Emitted when the item is clicked.
  sigPointsClicked(self, points, ev)  Emitted when a plot point is clicked
                                      Sends the list of points under the mouse.
  sigPointsHovered(self, points, ev)  Emitted when a plot point is hovered over.
                                      Sends the list of points under the mouse.
  ==================================  ==============================================
class_docstr_tok: ["*","*","Bases",":","*","*",":","class",":","`","GraphicsObject","<","pyqtgraph.GraphicsObject",">","`",":","class",":","`","PlotDataItem","`","provides","a","unified","interface","for","displaying","plot","curves",",","scatter","plots",",","or","both",".","It","also","contains","methods","to","transform","or","decimate","the","original","data","before","it","is","displayed",".","As","pyqtgraph","'s","standard","plotting","object",",","``","plot","(",")","``","methods","such","as",":","func",":","`","pyqtgraph.plot","`","and",":","func",":","`","PlotItem.plot","(",")","<","pyqtgraph.PlotItem.plot",">","`","create","instances","of",":","class",":","`","PlotDataItem","`",".","While","it","is","possible","to","use",":","class",":","`","PlotCurveItem","<","pyqtgraph.PlotCurveItem",">","`","or",":","class",":","`","ScatterPlotItem","<","pyqtgraph.ScatterPlotItem",">","`","individually",",","this","is","recommended","only","where","performance","is","critical","and","the","limited","functionality","of","these","classes","is","sufficient",".","==================================","==============================================","*","*","Signals",":","*","*","sigPlotChanged","(","self",")","Emitted","when","the","data","in","this","item","is","updated",".","sigClicked","(","self",",","ev",")","Emitted","when","the","item","is","clicked",".","sigPointsClicked","(","self",",","points",",","ev",")","Emitted","when","a","plot","point","is","clicked","Sends","the","list","of","points","under","the","mouse",".","sigPointsHovered","(","self",",","points",",","ev",")","Emitted","when","a","plot","point","is","hovered","over",".","Sends","the","list","of","points","under","the","mouse",".","==================================","=============================================="]
docstr: Limit the off-screen positions of data points at large magnification
  This avoids errors with plots not displaying because their visibility is incorrectly determined. 
  The default setting repositions far-off points to be within ±10^6 times the viewport height.
  
  =============== ================================================================
  **Arguments:**
  limit           (float or None) Any data outside the range of limit * hysteresis
                  will be constrained to the limit value limit.
                  All values are relative to the viewport height.
                  'None' disables the check for a minimal increase in performance.
                  Default is 1E+06.
                  
  hysteresis      (float) Hysteresis factor that controls how much change
                  in zoom level (vertical height) is allowed before recalculating
                  Default is 3.0
  =============== ================================================================
docstr_tok: ["Limit","the","off-screen","positions","of","data","points","at","large","magnification","This","avoids","errors","with","plots","not","displaying","because","their","visibility","is","incorrectly","determined",".","The","default","setting","repositions","far-off","points","to","be","within","\u00b110^6","times","the","viewport","height",".","===============","================================================================","*","*","Arguments",":","*","*","limit","(","float","or","None",")","Any","data","outside","the","range","of","limit","*","hysteresis","will","be","constrained","to","the","limit","value","limit",".","All","values","are","relative","to","the","viewport","height",".","'None","'","disables","the","check","for","a","minimal","increase","in","performance",".","Default","is","1E+06",".","hysteresis","(","float",")","Hysteresis","factor","that","controls","how","much","change","in","zoom","level","(","vertical","height",")","is","allowed","before","recalculating","Default","is","3.0","===============","================================================================"]
code: def setDynamicRangeLimit(self, limit=1e06, hysteresis=3.0):
      """
      Limit the off-screen positions of data points at large magnification
      This avoids errors with plots not displaying because their visibility is incorrectly determined.
      The default setting repositions far-off points to be within ±10^6 times the viewport height.
  
      =============== ================================================================
      **Arguments:**
      limit           (float or None) Any data outside the range of limit * hysteresis
                      will be constrained to the limit value limit.
                      All values are relative to the viewport height.
                      'None' disables the check for a minimal increase in performance.
                      Default is 1E+06.
  
      hysteresis      (float) Hysteresis factor that controls how much change
                      in zoom level (vertical height) is allowed before recalculating
                      Default is 3.0
      =============== ================================================================
      """
      if hysteresis < 1.0:
          hysteresis = 1.0
      self.opts["dynamicRangeHyst"] = hysteresis
  
      if limit == self.opts["dynamicRangeLimit"]:
          return  # avoid update if there is no change
      self.opts["dynamicRangeLimit"] = limit  # can be None
      self._datasetDisplay = None  # invalidate display data
  
      self.updateItems(styleUpdate=False)
  
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 26 for calling the PlotDataItem obj's underlying member method code with example usage: obj.setDynamicRangeLimit(limit, hysteresis) without return types