Index: src/sas/qtgui/Plotting/BoxSum.py
===================================================================
--- src/sas/qtgui/Plotting/BoxSum.py	(revision 6280464f8c6799ad2cb851c2fbb6ad66dc0fe2ba)
+++ src/sas/qtgui/Plotting/BoxSum.py	(revision 412e069e056992f58902bb666b62892b45346c61)
@@ -5,4 +5,6 @@
 from PyQt5 import QtGui
 from PyQt5 import QtWidgets
+
+import sas.qtgui.Utilities.GuiUtils as GuiUtils
 
 # Local UI
@@ -17,8 +19,8 @@
         assert isinstance(model, QtGui.QStandardItemModel)
 
-        self.txtBoxHeight.setValidator(QtGui.QDoubleValidator())
-        self.txtBoxWidth.setValidator(QtGui.QDoubleValidator())
-        self.txtCenterX.setValidator(QtGui.QDoubleValidator())
-        self.txtCenterY.setValidator(QtGui.QDoubleValidator())
+        self.txtBoxHeight.setValidator(GuiUtils.DoubleValidator())
+        self.txtBoxWidth.setValidator(GuiUtils.DoubleValidator())
+        self.txtCenterX.setValidator(GuiUtils.DoubleValidator())
+        self.txtCenterY.setValidator(GuiUtils.DoubleValidator())
 
         self.model = model
Index: src/sas/qtgui/Plotting/ColorMap.py
===================================================================
--- src/sas/qtgui/Plotting/ColorMap.py	(revision 0849aec6ceb97781213ef369f98e5eb61ec8cad3)
+++ src/sas/qtgui/Plotting/ColorMap.py	(revision 412e069e056992f58902bb666b62892b45346c61)
@@ -13,5 +13,5 @@
 from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
 from sas.qtgui.Plotting.PlotterData import Data2D
-from sas.qtgui.Utilities.GuiUtils import formatNumber
+from sas.qtgui.Utilities.GuiUtils import formatNumber, DoubleValidator
 from .rangeSlider import RangeSlider
 
@@ -51,8 +51,8 @@
 
         # Initialize validators on amplitude textboxes
-        validator_min = QtGui.QDoubleValidator(self.txtMinAmplitude)
+        validator_min = DoubleValidator(self.txtMinAmplitude)
         validator_min.setNotation(0)
         self.txtMinAmplitude.setValidator(validator_min)
-        validator_max = QtGui.QDoubleValidator(self.txtMaxAmplitude)
+        validator_max = DoubleValidator(self.txtMaxAmplitude)
         validator_max.setNotation(0)
         self.txtMaxAmplitude.setValidator(validator_max)
Index: src/sas/qtgui/Plotting/LinearFit.py
===================================================================
--- src/sas/qtgui/Plotting/LinearFit.py	(revision 304d082fdf2d11b8729c78132d385223c5c29054)
+++ src/sas/qtgui/Plotting/LinearFit.py	(revision 412e069e056992f58902bb666b62892b45346c61)
@@ -8,5 +8,5 @@
 from PyQt5 import QtWidgets
 
-from sas.qtgui.Utilities.GuiUtils import formatNumber
+from sas.qtgui.Utilities.GuiUtils import formatNumber, DoubleValidator
 
 from sas.qtgui.Plotting import Fittings
@@ -43,6 +43,6 @@
         self.y_is_log = self.yLabel == "log10(y)"
 
-        self.txtFitRangeMin.setValidator(QtGui.QDoubleValidator())
-        self.txtFitRangeMax.setValidator(QtGui.QDoubleValidator())
+        self.txtFitRangeMin.setValidator(DoubleValidator())
+        self.txtFitRangeMax.setValidator(DoubleValidator())
 
         # Default values in the line edits
@@ -158,10 +158,10 @@
         y_model = self.model.run(xmin)
         tempx.append(xminView)
-        tempy.append(numpy.power(10, y_model) if self.y_is_log else y_model)
+        tempy.append(numpy.power(10.0, y_model) if self.y_is_log else y_model)
 
         # load tempy with the maximum transformation
         y_model = self.model.run(xmax)
         tempx.append(xmaxView)
-        tempy.append(numpy.power(10, y_model) if self.y_is_log else y_model)
+        tempy.append(numpy.power(10.0, y_model) if self.y_is_log else y_model)
 
         # Set the fit parameter display when  FitDialog is opened again
@@ -247,9 +247,9 @@
             return numpy.sqrt(numpy.sqrt(x))
         elif self.xLabel == "log10(x)":
-            return numpy.power(10, x)
+            return numpy.power(10.0, x)
         elif self.xLabel == "ln(x)":
             return numpy.exp(x)
         elif self.xLabel == "log10(x^(4))":
-            return numpy.sqrt(numpy.sqrt(numpy.power(10, x)))
+            return numpy.sqrt(numpy.sqrt(numpy.power(10.0, x)))
         return x
 
Index: src/sas/qtgui/Plotting/Plotter2D.py
===================================================================
--- src/sas/qtgui/Plotting/Plotter2D.py	(revision 6280464f8c6799ad2cb851c2fbb6ad66dc0fe2ba)
+++ src/sas/qtgui/Plotting/Plotter2D.py	(revision 412e069e056992f58902bb666b62892b45346c61)
@@ -3,4 +3,5 @@
 import pylab
 import functools
+import logging
 
 from PyQt5 import QtCore
@@ -126,9 +127,11 @@
         zmax_temp = self.zmax
         # self.scale predefined in the baseclass
+        # in numpy > 1.12 power(int, -int) raises ValueException
+        # "Integers to negative integer powers are not allowed."
         if self.scale == 'log_{10}':
             if self.zmin is not None:
-                zmin_temp = numpy.power(10, self.zmin)
+                zmin_temp = numpy.power(10.0, self.zmin)
             if self.zmax is not None:
-                zmax_temp = numpy.power(10, self.zmax)
+                zmax_temp = numpy.power(10.0, self.zmax)
         else:
             if self.zmin is not None:
@@ -289,4 +292,5 @@
         new_plot.is_data = True
         GuiUtils.updateModelItemWithPlot(self._item, new_plot, new_plot.id)
+
         self.manager.communicator.plotUpdateSignal.emit([new_plot])
 
Index: src/sas/qtgui/Plotting/SetGraphRange.py
===================================================================
--- src/sas/qtgui/Plotting/SetGraphRange.py	(revision 0849aec6ceb97781213ef369f98e5eb61ec8cad3)
+++ src/sas/qtgui/Plotting/SetGraphRange.py	(revision 412e069e056992f58902bb666b62892b45346c61)
@@ -5,4 +5,6 @@
 from PyQt5 import QtGui
 from PyQt5 import QtWidgets
+
+import sas.qtgui.Utilities.GuiUtils as GuiUtils
 
 # Local UI
@@ -18,8 +20,8 @@
         assert(isinstance(y_range, tuple))
 
-        self.txtXmin.setValidator(QtGui.QDoubleValidator())
-        self.txtXmax.setValidator(QtGui.QDoubleValidator())
-        self.txtYmin.setValidator(QtGui.QDoubleValidator())
-        self.txtYmax.setValidator(QtGui.QDoubleValidator())
+        self.txtXmin.setValidator(GuiUtils.DoubleValidator())
+        self.txtXmax.setValidator(GuiUtils.DoubleValidator())
+        self.txtYmin.setValidator(GuiUtils.DoubleValidator())
+        self.txtYmax.setValidator(GuiUtils.DoubleValidator())
 
         self.txtXmin.setText(str(x_range[0]))
Index: src/sas/qtgui/Plotting/SlicerModel.py
===================================================================
--- src/sas/qtgui/Plotting/SlicerModel.py	(revision 0849aec6ceb97781213ef369f98e5eb61ec8cad3)
+++ src/sas/qtgui/Plotting/SlicerModel.py	(revision 412e069e056992f58902bb666b62892b45346c61)
@@ -1,3 +1,4 @@
 from PyQt5 import QtGui
+from PyQt5 import QtCore
 
 import sas.qtgui.Utilities.GuiUtils as GuiUtils
Index: src/sas/qtgui/Plotting/SlicerParameters.py
===================================================================
--- src/sas/qtgui/Plotting/SlicerParameters.py	(revision 0849aec6ceb97781213ef369f98e5eb61ec8cad3)
+++ src/sas/qtgui/Plotting/SlicerParameters.py	(revision 412e069e056992f58902bb666b62892b45346c61)
@@ -8,4 +8,6 @@
 from PyQt5 import QtWidgets
 from PyQt5 import QtWebKitWidgets
+
+import sas.qtgui.Utilities.GuiUtils as GuiUtils
 
 # Local UI
@@ -126,7 +128,7 @@
             super(PositiveDoubleEditor, self).__init__(parent)
             self.setAutoFillBackground(True)
-            validator = QtGui.QDoubleValidator()
+            validator = GuiUtils.DoubleValidator()
             # Don't use the scientific notation, cause 'e'.
-            validator.setNotation(QtGui.QDoubleValidator.StandardNotation)
+            validator.setNotation(GuiUtils.DoubleValidator.StandardNotation)
 
             self.setValidator(validator)
Index: src/sas/qtgui/Plotting/Slicers/SectorSlicer.py
===================================================================
--- src/sas/qtgui/Plotting/Slicers/SectorSlicer.py	(revision 0849aec6ceb97781213ef369f98e5eb61ec8cad3)
+++ src/sas/qtgui/Plotting/Slicers/SectorSlicer.py	(revision 412e069e056992f58902bb666b62892b45346c61)
@@ -3,4 +3,5 @@
 """
 import numpy
+import logging
 
 from .BaseInteractor import BaseInteractor
@@ -167,4 +168,5 @@
         new_plot.is_data = True
         GuiUtils.updateModelItemWithPlot(self._item, new_plot, new_plot.id)
+
         self.base.manager.communicator.plotUpdateSignal.emit([new_plot])
 
