Я хотел бы сохранить участок python. В MacOS все работает гладко, но это не удается под Windows7.save python plot with matplotlib не работает под окнами
Питон-команда выглядит следующим образом:
savefig('C:\Users\xyz\AppData\Local\Temp\pyplot1468046843481608342.png')
messge ошибка это одна:
Traceback (most recent call last):
File "C:\Users\xyz\AppData\Local\Temp\analyze3744796441786382480.py", line 340, in <module>
savefig('C:\Users\xyz\AppData\Local\Temp\pyplot1468046843481608342.png')
File "C:\Anaconda\lib\site-packages\matplotlib\pyplot.py", line 577, in savefig
res = fig.savefig(*args, **kwargs)
File "C:\Anaconda\lib\site-packages\matplotlib\figure.py", line 1470, in savefig
self.canvas.print_figure(*args, **kwargs)
File "C:\Anaconda\lib\site-packages\matplotlib\backend_bases.py", line 2194, in print_figure
**kwargs)
File "C:\Anaconda\lib\site-packages\matplotlib\backends\backend_agg.py", line 526, in print_png
filename_or_obj = open(filename_or_obj, 'wb')
IOError: [Errno 22] invalid mode ('wb') or filename: 'C:\\Users\xyz\\AppData\\Local\\Temp\\pyplot1468046843481608342.png'
Это Python Я использую:
Python 2.7.8 :: Anaconda 2.1.0 (32-bit)
Может кто-нибудь объясняет причину проблемы?
IIRC, вы можете использовать слэши также на окнах 'savefig ('C: /shorter/path/pyplot1468046843481608342.png')' и что должно работать, как есть. OTOH - чистый и портативный способ построения путей - ['os.path'] (http://pymotw.com/2/ospath/). Цитата из вышеприведенной ссылки: «Написание кода для работы с файлами на с несколькими платформами легко с помощью функций, включенных в модуль os.path . Даже программы, не предназначенные для портирования между платформами , должны использовать os.path для надежный анализ имен файлов ". – gboffi
спасибо за подсказку, работающую с os.path. Я посмотрю. пути были сгенерированы с помощью java, используя Java.io.File.createTempFile(). Поэтому я ничего не могу изменить вручную. – July