5

我正在尝试运行一个小程序来保存我的 3D 散点图,而不是在 GUI 中打开它。问题是两者兼而有之!这是我正在谈论的一段代码:

from matplotlib import pyplot
from scipy import math
from mpl_toolkits.mplot3d import Axes3D

fig = pyplot.figure()
ax = fig.add_subplot(111, projection='3d')        
ax.scatter(xPosition, yPosition, zPosition, c = velocity, s = mass)
ax.set_xlim3d(-plotSize, plotSize)
ax.set_ylim3d(-plotSize, plotSize)
ax.set_zlim3d(-plotSize, plotSize)
pyplot.savefig('plot.png')

我非常想知道如何在没有在 gui 中打开情节的情况下获得我的情节的保存图像。

4

1 回答 1

2

您应该使用 pylab.ioff() 作为 Saullo Castro 的高光,每次要保存图形时使用 pylab.savefig('file.png')。当您不需要图形时,只需执行 pylab.close() 即可关闭当前图形(并释放内存)。

from matplotlib import pyplot
from mpl_toolkits.mplot3d import Axes3D
pyplot.ioff()
fig = pyplot.figure()
# HERE your code to add things in the figure
pyplot.savefig('file.png')
pyplot.close()
于 2013-12-13T17:15:37.127 回答