diff --git a/pyqtgraph/graphicsItems/PlotCurveItem.py b/pyqtgraph/graphicsItems/PlotCurveItem.py index 2197a6cd..3d3e969d 100644 --- a/pyqtgraph/graphicsItems/PlotCurveItem.py +++ b/pyqtgraph/graphicsItems/PlotCurveItem.py @@ -173,8 +173,14 @@ class PlotCurveItem(GraphicsObject): if pxPad > 0: # determine length of pixel in local x, y directions px, py = self.pixelVectors() - px = 0 if px is None else px.length() - py = 0 if py is None else py.length() + try: + px = 0 if px is None else px.length() + except OverflowError: + px = 0 + try: + py = 0 if py is None else py.length() + except OverflowError: + py = 0 # return bounds expanded by pixel size px *= pxPad diff --git a/pyqtgraph/graphicsItems/ROI.py b/pyqtgraph/graphicsItems/ROI.py index 179dafdc..d51f75df 100644 --- a/pyqtgraph/graphicsItems/ROI.py +++ b/pyqtgraph/graphicsItems/ROI.py @@ -822,7 +822,10 @@ class ROI(GraphicsObject): if not self.rotateAllowed: return ## If the handle is directly over its center point, we can't compute an angle. - if lp1.length() == 0 or lp0.length() == 0: + try: + if lp1.length() == 0 or lp0.length() == 0: + return + except OverflowError: return ## determine new rotation angle, constrained if necessary @@ -862,7 +865,10 @@ class ROI(GraphicsObject): else: scaleAxis = 0 - if lp1.length() == 0 or lp0.length() == 0: + try: + if lp1.length() == 0 or lp0.length() == 0: + return + except OverflowError: return ang = newState['angle'] - lp0.angle(lp1) diff --git a/pyqtgraph/graphicsItems/ScatterPlotItem.py b/pyqtgraph/graphicsItems/ScatterPlotItem.py index 1c11fcf9..bdf89c45 100644 --- a/pyqtgraph/graphicsItems/ScatterPlotItem.py +++ b/pyqtgraph/graphicsItems/ScatterPlotItem.py @@ -664,8 +664,14 @@ class ScatterPlotItem(GraphicsObject): if pxPad > 0: # determine length of pixel in local x, y directions px, py = self.pixelVectors() - px = 0 if px is None else px.length() - py = 0 if py is None else py.length() + try: + px = 0 if px is None else px.length() + except OverflowError: + px = 0 + try: + py = 0 if py is None else py.length() + except OverflowError: + py = 0 # return bounds expanded by pixel size px *= pxPad