Index: src/sas/sasgui/guiframe/local_perspectives/plotting/Plotter2D.py
===================================================================
--- src/sas/sasgui/guiframe/local_perspectives/plotting/Plotter2D.py	(revision 3e5648b0f738718f823af66d5095c1cc74103d39)
+++ src/sas/sasgui/guiframe/local_perspectives/plotting/Plotter2D.py	(revision 5251ec6db8aae214addfa0a5a1da16820994958b)
@@ -11,9 +11,12 @@
 
 
-import wx
 import sys
 import math
+import logging
+
+import wx
 import numpy as np
-import logging
+from matplotlib.font_manager import FontProperties
+
 from sas.sasgui.plottools.PlotPanel import PlotPanel
 from sas.sasgui.plottools.plottables import Graph
@@ -24,9 +27,10 @@
 from sas.sasgui.guiframe.events import SlicerEvent
 from sas.sasgui.guiframe.utils import PanelMenu
-from  sas.sasgui.guiframe.local_perspectives.plotting.binder import BindArtist
-from Plotter1D import ModelPanel1D
+from sas.sasgui.guiframe.local_perspectives.plotting.binder import BindArtist
 from sas.sasgui.plottools.toolbar import NavigationToolBar
-from matplotlib.font_manager import FontProperties
-from graphAppearance import graphAppearance
+
+from .Plotter1D import ModelPanel1D
+from .graphAppearance import graphAppearance
+
 (InternalEvent, EVT_INTERNAL) = wx.lib.newevent.NewEvent()
 
@@ -41,5 +45,5 @@
 def find_key(dic, val):
     """return the key of dictionary dic given the value"""
-    return [k for k, v in dic.iteritems() if v == val][0]
+    return [k for k, v in dic.items() if v == val][0]
 
 
@@ -200,5 +204,5 @@
         ## Update self.data2d with the current plot
         self.data2D = data
-        if data.id in self.plots.keys():
+        if data.id in self.plots:
             #replace
             xlo, xhi = self.subplot.get_xlim()
@@ -326,7 +330,7 @@
                         slicerpop.Append(wx_id, item[0], item[1])
                         wx.EVT_MENU(self, wx_id, item[2])
-                    except:
+                    except Exception as exc:
                         msg = "ModelPanel1D.onContextMenu: "
-                        msg += "bad menu item  %s" % sys.exc_value
+                        msg += "bad menu item  %s" % exc
                         wx.PostEvent(self.parent, StatusEvent(status=msg))
                 slicerpop.AppendSeparator()
@@ -447,5 +451,5 @@
 
         """
-        import detector_dialog
+        from . import detector_dialog
         dialog = detector_dialog.DetectorDialog(self, -1, base=self.parent,
                                                 reset_zmin_ctl=self.default_zmin_ctl,
@@ -630,5 +634,5 @@
         """
         if self.slicer is not None:
-            from parameters_panel_slicer import SlicerParameterPanel
+            from .parameters_panel_slicer import SlicerParameterPanel
             dialog = SlicerParameterPanel(self, -1, "Slicer Parameters")
             dialog.set_slicer(self.slicer.__class__.__name__,
@@ -641,5 +645,5 @@
         Perform sector averaging on Q and draw sector slicer
         """
-        from SectorSlicer import SectorInteractor
+        from .SectorSlicer import SectorInteractor
         self.onClearSlicer(event)
         wx.PostEvent(self, InternalEvent(slicer=SectorInteractor))
@@ -649,5 +653,5 @@
         Perform sector averaging on Phi and draw annulus slicer
         """
-        from AnnulusSlicer import AnnulusInteractor
+        from .AnnulusSlicer import AnnulusInteractor
         self.onClearSlicer(event)
         wx.PostEvent(self, InternalEvent(slicer=AnnulusInteractor))
@@ -657,5 +661,5 @@
         """
         from sas.sasgui.guiframe.gui_manager import MDIFrame
-        from boxSum import BoxSum
+        from .boxSum import BoxSum
         self.onClearSlicer(event)
         self.slicer_z += 1
@@ -668,5 +672,5 @@
         params = self.slicer.get_params()
         ## Create a new panel to display results of summation of Data2D
-        from parameters_panel_boxsum import SlicerPanel
+        from .parameters_panel_boxsum import SlicerPanel
         win = MDIFrame(self.parent, None, 'None', (100, 200))
         new_panel = SlicerPanel(parent=win, id=-1,
@@ -699,5 +703,5 @@
         :param event: wx.menu event
         """
-        from boxSlicer import BoxInteractorX
+        from .boxSlicer import BoxInteractorX
         self.onClearSlicer(event)
         wx.PostEvent(self, InternalEvent(slicer=BoxInteractorX))
@@ -711,5 +715,5 @@
 
         """
-        from boxSlicer import BoxInteractorY
+        from .boxSlicer import BoxInteractorY
         self.onClearSlicer(event)
         wx.PostEvent(self, InternalEvent(slicer=BoxInteractorY))
