首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Matplotlib:将图形保存为iPython notebook中的文件

Matplotlib:将图形保存为iPython notebook中的文件
EN

Stack Overflow用户
提问于 2013-10-09 19:54:27
回答 2查看 64.4K关注 0票数 36

我正在尝试将Matplotlib图形保存为iPython笔记本中的文件。

代码语言:javascript
复制
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_axes([1,1,1,1])
ax.plot([1,2])

fig.savefig('test.png')

iPython笔记本中的内联视图看起来很好:

文件'test.png‘几乎是空的。它看起来像是图移到了右上角,你可以在角落里看到刻度标签'1.0‘和'0.0’。

如何从iPython笔记本生成一个看起来像内联视图的文件?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-09 20:41:50

问题已解决:在savefig中添加'bbox_inches='tight'参数。

代码语言:javascript
复制
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_axes([1,1,1,1])
plt.plot([1,2])

savefig('test.png', bbox_inches='tight')

我不明白这里发生了什么,但是这个文件现在看起来像iPython笔记本内联文件。耶。

票数 34
EN

Stack Overflow用户

发布于 2013-10-09 23:22:26

实际上,savefig工作正常。当您调用add_axes时,您的列表指定了一个矩形:[left, bottom, width, height]。由于图形在两个轴上从0到1,原点在左下角,因此您将从图形的最右上角开始制作一个宽度和高度均为1的矩形。你可能想要做ax = fig.add_axes([0,0,1,1])

我不确定为什么内联图不考虑轴的放置位置。如果我必须猜测,我会说内联后端自动计算出边界框并根据它放置内联图形。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19271309

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档