0

python ggplot 很棒,但我遇到了内存问题。

import pandas as pd
from ggplot import *


data = pd.DataFrame({"date": [1, 2, 3],
                     "value": [10, 20, 30]})

for i in range(30):
    gg = ggplot(aes(x='date', y='value'), data=data) + geom_point(alpha=0.5)
    print(gg)
    f = "fig{}.png".format(i)
    ggsave(f, gg)

此代码显示 RuntimeWarning(ggplot-0.4.7)。

/lib/python2.7/site-packages/matplotlib/pyplot.py:412: RuntimeWarning: More than 20 figures have been opened. Figures created through the pyplot interface (`matplotlib.pyplot.figure`) are retained until explicitly closed and may consume too much memory. (To control this warning, see the rcParam `figure.max_num_figures`).

如何删除旧数字?

4

1 回答 1

2

ggplot 使用 matplotlib 的 pyplot 接口。您可以使用以下命令关闭所有现有的 pyplot 图形:

# Importing this library as plt is a convention, same
# importing numpy as np, or pandas as pd
import matplotlib.pyplot as plt
plt.close('all')

ggplot 仍处于开发的早期阶段,因此希望随着它接近稳定版本,其中一些问题将得到解决。

于 2014-04-09T03:13:28.100 回答