Index: src/sas/sasgui/guiframe/events.py
===================================================================
--- src/sas/sasgui/guiframe/events.py	(revision d85c194ea2f78cb2b9b3de9c969e1b8ebea6b6d2)
+++ src/sas/sasgui/guiframe/events.py	(revision 6ffa0ddc406b5f3b0441f71973d3271354b486e9)
@@ -8,11 +8,13 @@
 # plot Qrange
 (PlotQrangeEvent, EVT_PLOT_QRANGE) = wx.lib.newevent.NewEvent()
+# set plot limits
+(PlotLimitEvent, EVT_PLOT_LIM) = wx.lib.newevent.NewEvent()
 # print the messages on statusbar
 (StatusEvent,  EVT_STATUS)   = wx.lib.newevent.NewEvent()
-#create a panel slicer 
+#create a panel slicer
 (SlicerPanelEvent, EVT_SLICER_PANEL)   = wx.lib.newevent.NewEvent()
-#print update paramaters for panel slicer 
+#print update paramaters for panel slicer
 (SlicerParamUpdateEvent, EVT_SLICER_PARS_UPDATE)   = wx.lib.newevent.NewEvent()
-#update the slicer from the panel 
+#update the slicer from the panel
 (SlicerParameterEvent, EVT_SLICER_PARS)   = wx.lib.newevent.NewEvent()
 #slicer event
Index: src/sas/sasgui/guiframe/local_perspectives/plotting/plotting.py
===================================================================
--- src/sas/sasgui/guiframe/local_perspectives/plotting/plotting.py	(revision d85c194ea2f78cb2b9b3de9c969e1b8ebea6b6d2)
+++ src/sas/sasgui/guiframe/local_perspectives/plotting/plotting.py	(revision 6ffa0ddc406b5f3b0441f71973d3271354b486e9)
@@ -16,4 +16,5 @@
 from sas.sasgui.guiframe.events import EVT_NEW_PLOT
 from sas.sasgui.guiframe.events import EVT_PLOT_QRANGE
+from sas.sasgui.guiframe.events import EVT_PLOT_LIM
 from sas.sasgui.guiframe.events import DeletePlotPanelEvent
 from sas.sasgui.guiframe.plugin_base import PluginBase
@@ -79,4 +80,5 @@
         self.parent.Bind(EVT_NEW_PLOT, self._on_plot_event)
         self.parent.Bind(EVT_PLOT_QRANGE, self._on_plot_qrange)
+        self.parent.Bind(EVT_PLOT_LIM, self._on_plot_lim)
         # We have no initial panels for this plug-in
         return []
@@ -95,4 +97,19 @@
             return
         panel.on_plot_qrange(event)
+
+    def _on_plot_lim(self, event=None):
+        if event == None:
+            return
+        if event.id in self.plot_panels.keys():
+            panel = self.plot_panels[event.id]
+        elif event.group_id in self.plot_panels.keys():
+            panel = self.plot_panels[event.group_id]
+        else:
+            return
+        if hasattr(event, 'xlim'):
+            panel.subplot.set_xlim(event.xlim)
+        if hasattr(event, 'ylim'):
+            panel.subplot.set_ylim(event.ylim)
+
 
     def _on_show_panel(self, event):
@@ -312,3 +329,7 @@
                 new_panel = self.create_2d_panel(data, group_id)
             self.create_panel_helper(new_panel, data, group_id, title)
+            if hasattr(event, 'xlim'):
+                new_panel.subplot.set_xlim(event.xlim)
+            if hasattr(event, 'ylim'):
+                new_panel.subplot.set_ylim(event.ylim)
         return
Index: src/sas/sasgui/perspectives/corfunc/corfunc.py
===================================================================
--- src/sas/sasgui/perspectives/corfunc/corfunc.py	(revision 6f343e3a15884f25a9c9df31c2d674a355df473d)
+++ src/sas/sasgui/perspectives/corfunc/corfunc.py	(revision 6ffa0ddc406b5f3b0441f71973d3271354b486e9)
@@ -10,4 +10,5 @@
 from sas.sasgui.guiframe.events import StatusEvent
 from sas.sasgui.guiframe.events import NewPlotEvent
+from sas.sasgui.guiframe.events import PlotLimitEvent
 from sas.sasgui.guiframe.gui_style import GUIFRAME_ID
 from sas.sasgui.perspectives.corfunc.corfunc_panel import CorfuncPanel
@@ -186,4 +187,7 @@
             wx.CallAfter(self.corfunc_panel.plot_qrange, active=active_ctrl,
                 leftdown=True)
+        if label == IQ_EXTRAPOLATED_DATA_LABEL:
+            xlim = (min(self.corfunc_panel._extrapolated_data.x), self.corfunc_panel.qmax[1]*1.2)
+            wx.CallAfter(wx.PostEvent, self.parent, PlotLimitEvent(id=IQ_DATA_LABEL, group_id=GROUP_ID_IQ_DATA, xlim=xlim))
 
     def clear_data(self):
Index: src/sas/sasgui/perspectives/corfunc/corfunc_panel.py
===================================================================
--- src/sas/sasgui/perspectives/corfunc/corfunc_panel.py	(revision a3ed157cf601ba457b3dcc75a48e6d857cce945d)
+++ src/sas/sasgui/perspectives/corfunc/corfunc_panel.py	(revision 6ffa0ddc406b5f3b0441f71973d3271354b486e9)
@@ -217,13 +217,5 @@
             self._transform_btn.Disable()
             return
-        # TODO: Find way to set xlim and ylim so full range of data can be
-        # plotted but zoomed in
-        maxq = self._data.x.max()
-        mask = self._extrapolated_data.x <= maxq
-        numpts = len(self._extrapolated_data.x[mask]) + 250
-        plot_x = self._extrapolated_data.x[0:numpts]
-        plot_y = self._extrapolated_data.y[0:numpts]
-        to_plot = Data1D(plot_x, plot_y)
-        self._manager.show_data(to_plot, IQ_EXTRAPOLATED_DATA_LABEL)
+        self._manager.show_data(self._extrapolated_data, IQ_EXTRAPOLATED_DATA_LABEL)
         # Update state of the GUI
         self._transform_btn.Enable()
