Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 9bc08c2

Browse filesBrowse files
committed
Simplify savefig.directory persistence.
1 parent 570e830 commit 9bc08c2
Copy full SHA for 9bc08c2

File tree

Expand file treeCollapse file tree

5 files changed

+32
-46
lines changed
Filter options
Expand file treeCollapse file tree

5 files changed

+32
-46
lines changed

‎lib/matplotlib/backend_bases.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backend_bases.py
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2303,7 +2303,7 @@ def get_default_filename(self):
23032303
default_filetype = self.get_default_filetype()
23042304
default_filename = default_basename + '.' + default_filetype
23052305

2306-
save_dir = os.path.expanduser(rcParams.get('savefig.directory', ''))
2306+
save_dir = os.path.expanduser(rcParams['savefig.directory'])
23072307

23082308
# ensure non-existing filename in save dir
23092309
i = 1

‎lib/matplotlib/backends/backend_gtk.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backends/backend_gtk.py
+5-8Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -707,7 +707,7 @@ def get_filechooser(self):
707707
fc = FileChooserDialog(
708708
title='Save the figure',
709709
parent=self.win,
710-
path=os.path.expanduser(rcParams.get('savefig.directory', '')),
710+
path=os.path.expanduser(rcParams['savefig.directory']),
711711
filetypes=self.canvas.get_supported_filetypes(),
712712
default_filetype=self.canvas.get_default_filetype())
713713
fc.set_current_name(self.canvas.get_default_filename())
@@ -718,13 +718,10 @@ def save_figure(self, *args):
718718
fname, format = chooser.get_filename_from_user()
719719
chooser.destroy()
720720
if fname:
721-
startpath = os.path.expanduser(rcParams.get('savefig.directory', ''))
722-
if startpath == '':
723-
# explicitly missing key or empty str signals to use cwd
724-
rcParams['savefig.directory'] = startpath
725-
else:
726-
# save dir for next time
727-
rcParams['savefig.directory'] = os.path.dirname(six.text_type(fname))
721+
# Save dir for next time, unless empty str (i.e., use cwd).
722+
if startpath != "":
723+
rcParams['savefig.directory'] = (
724+
os.path.dirname(six.text_type(fname)))
728725
try:
729726
self.canvas.figure.savefig(fname, format=format)
730727
except Exception as e:

‎lib/matplotlib/backends/backend_gtk3.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backends/backend_gtk3.py
+8-11Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -561,7 +561,7 @@ def get_filechooser(self):
561561
fc = FileChooserDialog(
562562
title='Save the figure',
563563
parent=self.win,
564-
path=os.path.expanduser(rcParams.get('savefig.directory', '')),
564+
path=os.path.expanduser(rcParams['savefig.directory']),
565565
filetypes=self.canvas.get_supported_filetypes(),
566566
default_filetype=self.canvas.get_default_filetype())
567567
fc.set_current_name(self.canvas.get_default_filename())
@@ -572,13 +572,11 @@ def save_figure(self, *args):
572572
fname, format = chooser.get_filename_from_user()
573573
chooser.destroy()
574574
if fname:
575-
startpath = os.path.expanduser(rcParams.get('savefig.directory', ''))
576-
if startpath == '':
577-
# explicitly missing key or empty str signals to use cwd
578-
rcParams['savefig.directory'] = startpath
579-
else:
580-
# save dir for next time
581-
rcParams['savefig.directory'] = os.path.dirname(six.text_type(fname))
575+
startpath = os.path.expanduser(rcParams['savefig.directory'])
576+
# Save dir for next time, unless empty str (i.e., use cwd).
577+
if startpath != "":
578+
rcParams['savefig.directory'] = (
579+
os.path.dirname(six.text_type(fname)))
582580
try:
583581
self.canvas.figure.savefig(fname, format=format)
584582
except Exception as e:
@@ -814,7 +812,7 @@ def get_filechooser(self):
814812
fc = FileChooserDialog(
815813
title='Save the figure',
816814
parent=self.figure.canvas.manager.window,
817-
path=os.path.expanduser(rcParams.get('savefig.directory', '')),
815+
path=os.path.expanduser(rcParams['savefig.directory']),
818816
filetypes=self.figure.canvas.get_supported_filetypes(),
819817
default_filetype=self.figure.canvas.get_default_filetype())
820818
fc.set_current_name(self.figure.canvas.get_default_filename())
@@ -825,8 +823,7 @@ def trigger(self, *args, **kwargs):
825823
fname, format_ = chooser.get_filename_from_user()
826824
chooser.destroy()
827825
if fname:
828-
startpath = os.path.expanduser(
829-
rcParams.get('savefig.directory', ''))
826+
startpath = os.path.expanduser(rcParams['savefig.directory'])
830827
if startpath == '':
831828
# explicitly missing key or empty str signals to use cwd
832829
rcParams['savefig.directory'] = startpath

‎lib/matplotlib/backends/backend_qt5.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backends/backend_qt5.py
+6-9Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -725,8 +725,8 @@ def save_figure(self, *args):
725725
sorted_filetypes = sorted(six.iteritems(filetypes))
726726
default_filetype = self.canvas.get_default_filetype()
727727

728-
startpath = matplotlib.rcParams.get('savefig.directory', '')
729-
startpath = os.path.expanduser(startpath)
728+
startpath = os.path.expanduser(
729+
matplotlib.rcParams['savefig.directory'])
730730
start = os.path.join(startpath, self.canvas.get_default_filename())
731731
filters = []
732732
selectedFilter = None
@@ -742,13 +742,10 @@ def save_figure(self, *args):
742742
"Choose a filename to save to",
743743
start, filters, selectedFilter)
744744
if fname:
745-
if startpath == '':
746-
# explicitly missing key or empty str signals to use cwd
747-
matplotlib.rcParams['savefig.directory'] = startpath
748-
else:
749-
# save dir for next time
750-
savefig_dir = os.path.dirname(six.text_type(fname))
751-
matplotlib.rcParams['savefig.directory'] = savefig_dir
745+
# Save dir for next time, unless empty str (i.e., use cwd).
746+
if startpath != "":
747+
matplotlib.rcParams['savefig.directory'] = (
748+
os.path.dirname(six.text_type(fname)))
752749
try:
753750
self.canvas.figure.savefig(six.text_type(fname))
754751
except Exception as e:

‎lib/matplotlib/backends/backend_tkagg.py

Copy file name to clipboardExpand all lines: lib/matplotlib/backends/backend_tkagg.py
+12-17Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -768,8 +768,7 @@ def save_figure(self, *args):
768768
# work - JDH!
769769
#defaultextension = self.canvas.get_default_filetype()
770770
defaultextension = ''
771-
initialdir = rcParams.get('savefig.directory', '')
772-
initialdir = os.path.expanduser(initialdir)
771+
initialdir = os.path.expanduser(rcParams['savefig.directory'])
773772
initialfile = self.canvas.get_default_filename()
774773
fname = tkinter_tkfiledialog.asksaveasfilename(
775774
master=self.window,
@@ -780,20 +779,17 @@ def save_figure(self, *args):
780779
initialfile=initialfile,
781780
)
782781

783-
if fname == "" or fname == ():
782+
if fname in ["", ()]:
784783
return
785-
else:
786-
if initialdir == '':
787-
# explicitly missing key or empty str signals to use cwd
788-
rcParams['savefig.directory'] = initialdir
789-
else:
790-
# save dir for next time
791-
rcParams['savefig.directory'] = os.path.dirname(six.text_type(fname))
792-
try:
793-
# This method will handle the delegation to the correct type
794-
self.canvas.figure.savefig(fname)
795-
except Exception as e:
796-
tkinter_messagebox.showerror("Error saving file", str(e))
784+
# Save dir for next time, unless empty str (i.e., use cwd).
785+
if initialdir != "":
786+
rcParams['savefig.directory'] = (
787+
os.path.dirname(six.text_type(fname)))
788+
try:
789+
# This method will handle the delegation to the correct type
790+
self.canvas.figure.savefig(fname)
791+
except Exception as e:
792+
tkinter_messagebox.showerror("Error saving file", str(e))
797793

798794
def set_active(self, ind):
799795
self._ind = ind
@@ -984,8 +980,7 @@ def trigger(self, *args):
984980
# work - JDH!
985981
# defaultextension = self.figure.canvas.get_default_filetype()
986982
defaultextension = ''
987-
initialdir = rcParams.get('savefig.directory', '')
988-
initialdir = os.path.expanduser(initialdir)
983+
initialdir = os.path.expanduser(rcParams['savefig.directory'])
989984
initialfile = self.figure.canvas.get_default_filename()
990985
fname = tkinter_tkfiledialog.asksaveasfilename(
991986
master=self.figure.canvas.manager.window,

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.