【问题标题】:Edit created figure with pylab使用 pylab 编辑创建的图形
【发布时间】:2013-02-05 15:03:36
【问题描述】:

如果需要,您可以在 MATLAB 中编辑图形文件 (.fig) - 是否有使用 pylab 的类似功能?

我可以创建我需要的图像,但它以 .png 的形式出现,我无法控制 - 如果我可以稍微编辑它(例如将图例移到一边,或修改标签)会很棒

【问题讨论】:

  • 修改颜色matplotlib.rc(labelcolor='w')。写它做from matplotlib import pyplot然后pyplot.xlabel('X axis text')。 y轴也一样。改文件类型,不知道有没有可能。
  • 目前没有像图文件这样的东西。但是,如果您保存为 PDF,至少应该可以使用外部应用程序修改标签。我不知道是否有可能使用pickle 获得类似于您想要的东西
  • 谢谢大家,有没有另存为 .svg 的选项?
  • 可以,手动保存绘图时,可以选择不同的输出格式。
  • 顺便说一句。你要问的是问题的一个子集stackoverflow.com/questions/4348733/…

标签: python matlab matplotlib figures


【解决方案1】:

如果你想保存你的情节并稍后编辑它,你应该尝试这里给出的提示 thread

如果您的绘图在 [I]python shell 中仍然处于活动状态,您可以编辑所有属性并进行重绘。下面的例子是检查后将图例从默认位置移动到右上角。

In [51]: import numpy as np

In [52]: import pylab as pl

In [53]: v = np.arange(10)

In [54]: pl.figure(1)
Out[54]: <matplotlib.figure.Figure at 0x253a250>

In [55]: # if needed, use pl.figure(1) again to make it active

In [56]: pl.plot(v)
Out[56]: [<matplotlib.lines.Line2D at 0x456a450>]

In [60]: pl.legend('v')
Out[60]: <matplotlib.legend.Legend at 0x4591150>

In [61]: pl.show(block=False)

In [62]: # keyword block=False to issue further commands

In [63]: pl.legend('v',loc=2)
Out[63]: <matplotlib.legend.Legend at 0x45962d0>

In [64]: pl.show(block=False)

In [67]: # now the legend is in the upper right corner

【讨论】:

  • 谢谢 - 这是一个很好的建议,我可以使用 - 但是当我使用 block=false 关键字时,图像不会出现(我刚刚尝试了你的示例) - 我想看看图像在编辑之前 - 我做错了吗?
  • 你是如何执行这个脚本的?当您在 Ipython shell 中时,它应该可以工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多