我用下面的代碼在IPython的筆記本條形圖保存爲.png文件:
plt.savefig(filename, bbox_inches='tight')
誤差bbox_inches =在matplotlib「緊」
它工作在我的電腦上,我曾嘗試在另一臺計算機上運行腳本。但是,當我嘗試在另一臺機器上運行它時,出現以下錯誤。
AssertionError
---> 119 plt.savefig(filename,bbox_inches='tight')
C:\Python27\lib\site-packages\matplotlib\pyplot.pyc in savefig(*args,**kwargs)
---> 472 self.canvas.print_figure(*args,**kwargs)
C:\Python27\lib\site-packages\matplotlib\figure.pyc in savefig(self,*args,**kwargs)
---> 1363 self.canvas.print_figure(*args,**kwargs)
C:\Python27\lib\site-packages\matplotlib\backend_bases.pyc
---> 2054 bbox_inches = self.figure.get_tightbbox(renderer)
C:\Python27\lib\site-packages\matplotlib\figure.pyc in get_tightbbox(self,renderer)
---> 1496 _bbox = Bbox.union([b for b in bb if b.width!=0 or b.height!=0])
C:\Python27\lib\site-packages\matplotlib\transforms.pyc in union(bboxes)
---> 714 assert(len(bboxes))
AssertionError:
卸下bbox_inches =「緊」的說法似乎解決錯誤並保存文件,但沒有圖像出現,只有一個完全空白的.png文件。
我確信我們的python,matplotlib和其他軟件包的版本都是一樣的。有沒有人遇到過這個?我認爲這可能是matplotlib中的一個錯誤,但那樣做沒有意義,因爲它在我的電腦上工作正常,而且我們有相同的版本。任何想法或建議?
就我個人而言,我認爲這種行爲應該交給一個Exception而不是一個'assert',所以它可能需要一個bug報告。 – Hooked 2013-04-24 04:26:58
因爲兩者都使用相同版本的python和matplotlib,你認爲會導致它在我的計算機上工作,而不是另一個? – 2013-04-25 22:52:35
@OsmondBishop老實說,沒有看到產生幾乎不可能的錯誤的代碼。這就像告訴技工「我的車發出有趣的噪音,怎麼了?」不讓他們打開引擎蓋。如果您認爲我發現了問題,請標記爲正確,如果不是的話請澄清。或者更好的,問一個新問題! – Hooked 2013-04-26 00:40:47