Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit d4583de

Browse files
committed
Fix Unicode encoding error saving SVGs with Unicode characters on some platforms
svn path=/branches/v1_0_maint/; revision=8842
1 parent 9000401 commit d4583de

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

lib/matplotlib/backends/backend_svg.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -860,7 +860,7 @@ def print_svg(self, filename, *args, **kwargs):
860860
if is_string_like(filename):
861861
fh_to_close = svgwriter = codecs.open(filename, 'w', 'utf-8')
862862
elif is_writable_file_like(filename):
863-
svgwriter = codecs.EncodedFile(filename, 'utf-8')
863+
svgwriter = codecs.getwriter('utf-8')(filename)
864864
fh_to_close = None
865865
else:
866866
raise ValueError("filename must be a path or a file-like object")
@@ -869,10 +869,10 @@ def print_svg(self, filename, *args, **kwargs):
869869
def print_svgz(self, filename, *args, **kwargs):
870870
if is_string_like(filename):
871871
gzipwriter = gzip.GzipFile(filename, 'w')
872-
fh_to_close = svgwriter = codecs.EncodedFile(gzipwriter, 'utf-8')
872+
fh_to_close = svgwriter = codecs.getwriter('utf-8')(gzipwriter)
873873
elif is_writable_file_like(filename):
874874
fh_to_close = gzipwriter = gzip.GzipFile(fileobj=filename, mode='w')
875-
svgwriter = codecs.EncodedFile(gzipwriter, 'utf-8')
875+
svgwriter = codecs.getwriter('utf-8')(gzipwriter)
876876
else:
877877
raise ValueError("filename must be a path or a file-like object")
878878
return self._print_svg(filename, svgwriter, fh_to_close)

0 commit comments

Comments
 (0)