diff --git a/dstatInterface/interface/dstatinterface.glade b/dstatInterface/interface/dstatinterface.glade
index b27fc3a9715cf0569ad405b12672bcf03d88ed1b..a608eaa75ebb1bad5d6192319fc662e9b14a9790 100644
--- a/dstatInterface/interface/dstatinterface.glade
+++ b/dstatInterface/interface/dstatinterface.glade
@@ -156,6 +156,7 @@
                         <property name="can_focus">False</property>
                         <property name="image">image3</property>
                         <property name="use_stock">False</property>
+                        <signal name="activate" handler="on_file_save_plot_activate" swapped="no"/>
                       </object>
                     </child>
                     <child>
@@ -456,14 +457,17 @@
                           <object class="GtkEntry" id="autosavename">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
+                            <property name="has_tooltip">True</property>
                             <property name="max_length">32</property>
                             <property name="invisible_char">●</property>
                             <property name="text" translatable="yes">file</property>
-                            <property name="overwrite_mode">True</property>
+                            <property name="caps_lock_warning">False</property>
+                            <property name="primary_icon_stock">gtk-file</property>
                             <property name="primary_icon_activatable">False</property>
                             <property name="secondary_icon_activatable">False</property>
                             <property name="primary_icon_sensitive">True</property>
                             <property name="secondary_icon_sensitive">True</property>
+                            <property name="primary_icon_tooltip_text" translatable="yes">File name</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
diff --git a/dstatInterface/interface/save.py b/dstatInterface/interface/save.py
index 1f74c86276cbd5221aba3943b8ba2f3258a002e9..f472a98659f80781e4ac30d7682b0337905716b2 100644
--- a/dstatInterface/interface/save.py
+++ b/dstatInterface/interface/save.py
@@ -1,4 +1,5 @@
 #!/usr/bin/env python
+# -*- coding: utf-8 -*-
 
 import gtk, io, os
 import numpy as np
@@ -34,6 +35,41 @@ def manSave(current_exp):
     elif response == gtk.RESPONSE_CANCEL:
         fcd.destroy()
 
+def plotSave(plot):
+    fcd = gtk.FileChooserDialog("Save Plot…", None, gtk.FILE_CHOOSER_ACTION_SAVE, (gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL, gtk.STOCK_SAVE, gtk.RESPONSE_OK))
+
+    filters = [gtk.FileFilter()]
+    filters[0].set_name("Portable Document Format (.pdf)")
+    filters[0].add_pattern("*.pdf")
+    filters.append(gtk.FileFilter())
+    filters[1].set_name("Portable Network Graphics (.png)")
+    filters[1].add_pattern("*.png")
+    
+    fcd.set_do_overwrite_confirmation(True)
+    for i in filters:
+        fcd.add_filter(i)
+    
+    response = fcd.run()
+    
+    if response == gtk.RESPONSE_OK:
+        path = fcd.get_filename()
+        print "Selected filepath: %s" % path
+        filter_selection = fcd.get_filter().get_name()
+        
+        if filter_selection.endswith("(.pdf)"):
+            if not path.endswith(".pdf"):
+                path += ".pdf"
+        
+        elif filter_selection.endswith("(.png)"):
+            if not path.endswith(".png"):
+                path += ".png"
+
+        plot.figure.savefig(path) #savefig determines format from file extension
+        fcd.destroy()
+    
+    elif response == gtk.RESPONSE_CANCEL:
+        fcd.destroy()
+
 def autoSave(current_exp, dir_button, name, expnumber):
     if name == "":
         name = "file"
diff --git a/dstatInterface/interface_test.py b/dstatInterface/interface_test.py
index e4b7b0533d0e6ea7b732ad52c2e3c76a22a618b5..0b58a692155ecbc616f89ef606d4e697e03808f7 100644
--- a/dstatInterface/interface_test.py
+++ b/dstatInterface/interface_test.py
@@ -557,6 +557,9 @@ class main:
     def on_file_save_exp_activate(self, menuitem, data=None):
         if self.current_exp:
             save_inst = save.manSave(self.current_exp)
+    
+    def on_file_save_plot_activate(self, menuitem, data=None):
+            save_inst = save.plotSave(self.plot)
 
 
 if __name__ == "__main__":