Index: guiframe/dataFitting.py
===================================================================
--- guiframe/dataFitting.py	(revision 20b6760a217a5d8f3c98968dfdaf1eaad24b5c4b)
+++ guiframe/dataFitting.py	(revision 8e87ece4ce428696506026b358944056661f9e91)
@@ -2,4 +2,7 @@
     Adapters for fitting module
 """
+import copy
+import numpy
+
 from danse.common.plottools.plottables import Data1D as PlotData1D
 from danse.common.plottools.plottables import Data2D as PlotData2D
@@ -9,9 +12,7 @@
 from DataLoader.data_info import Data2D as LoadData2D
 
-import copy
-
 class Data1D(PlotData1D, LoadData1D):
     
-    def __init__(self,x=[],y=[],dx=None,dy=None):
+    def __init__(self, x=[], y=[], dx=None, dy=None):
         PlotData1D.__init__(self, x, y, dx, dy)
         LoadData1D.__init__(self, x, y, dx, dy)
@@ -25,9 +26,13 @@
         """
         self.x  = copy.deepcopy(data1d.x)
-        self.dx = copy.deepcopy(data1d.dx)
         self.y  = copy.deepcopy(data1d.y)
         self.dy = copy.deepcopy(data1d.dy)
-        self.dxl = copy.deepcopy(data1d.dxl)
-        self.dxw = copy.deepcopy(data1d.dxw)
+        
+        if hasattr(data1d, "dx"):
+            self.dx = copy.deepcopy(data1d.dx)    
+        if hasattr(data1d, "dxl"):
+            self.dxl = copy.deepcopy(data1d.dxl)
+        if hasattr(data1d, "dxw"):
+            self.dxw = copy.deepcopy(data1d.dxw)
     
         self.xaxis(data1d._xaxis,data1d._xunit)
@@ -47,5 +52,5 @@
         LoadData1D.__init__(self, x, y, dy)
         self.id= None
-        self.group_id =None
+        self.group_id = None
         self.is_data = True
     
@@ -57,7 +62,13 @@
         self.y  = copy.deepcopy(data1d.y)
         self.dy = copy.deepcopy(data1d.dy)
-   
+        if hasattr(data1d, "dx"):
+            self.dx = copy.deepcopy(data1d.dx) 
+        if hasattr(data1d, "dxl"):
+            self.dxl = copy.deepcopy(data1d.dxl)
+        if hasattr(data1d, "dxw"):
+            self.dxw = copy.deepcopy(data1d.dxw)    
         self.xaxis(data1d._xaxis,data1d._xunit)
         self.yaxis(data1d._yaxis,data1d._yunit)
+        
     def __str__(self):
         """
Index: guiframe/local_perspectives/plotting/Plotter1D.py
===================================================================
--- guiframe/local_perspectives/plotting/Plotter1D.py	(revision b91c736a94d7a9e41b1fbb38e0db2151cb1a3d46)
+++ guiframe/local_perspectives/plotting/Plotter1D.py	(revision 8e87ece4ce428696506026b358944056661f9e91)
@@ -18,4 +18,5 @@
 import time
 
+from copy import deepcopy
 import danse.common.plottools
 from danse.common.plottools.PlotPanel import PlotPanel
@@ -299,10 +300,12 @@
             name =self.plots[self.graph.selected_plottable].name
             dy = self.plots[self.graph.selected_plottable].dy
-            self.err_dy[name]= dy
+            self.err_dy[name]= deepcopy(dy)
             ## Create a new dy for a new plottable
-            import numpy
-            dy= numpy.zeros(len(self.plots[self.graph.selected_plottable].y))
+           
+            dy = numpy.zeros(len(self.plots[self.graph.selected_plottable].y))
             selected_plot= self.plots[self.graph.selected_plottable]
-            
+            #post the removed error to the parent
+            event = ErrorDataEvent(err_dy= deepcopy(self.err_dy))
+            wx.PostEvent(self.parent, event)
             if selected_plot.__class__.__name__=="Data1D":
                 # Make sure that we can pass a basic Data1D
@@ -345,12 +348,9 @@
             ## save the plot 
             self.plots[self.graph.selected_plottable]=new_plot
+          
             ## Render the graph
             self.graph.render(self)
             self.subplot.figure.canvas.draw_idle() 
             
-            event = ErrorDataEvent(err_dy=self.err_dy)
-            wx.PostEvent(self.parent, event)
-    
-    
     def _on_add_errors(self, evt):
         """
@@ -361,6 +361,4 @@
             @param evt: Menu event
         """
-       
-        
         if not self.graph.selected_plottable == None \
             and self.graph.selected_plottable in self.plots.keys():
@@ -374,5 +372,5 @@
             
             try:
-                dy = self.err_dy[selected_plot.name]
+                dy = deepcopy(self.err_dy[selected_plot.name])
                
             except:
