【发布时间】:2018-01-12 23:00:00
【问题描述】:
我最近切换到 pycharm 作为我的主要 python 开发环境,总的来说,我对它的工作方式非常满意。但是我遇到了一些问题。首先,我发现运行脚本非常慢,更不用说如果我使用 matplotlib 显示绘图,那么与简单地使用 IDLE 相比,交互式绘图非常慢。
我想通过不实际显示情节来解决这个问题,而只是保存图形。然而,似乎即使我没有明确调用在后台调用的 show() 然后再次关闭。知道发生了什么吗?
我的代码:
# plot exchange rate over the years
fig, ax = plt.subplots(1, 1, figsize=(12,9))
ax.plot(years, data, color=c[0])
# set figure properties
ax.set_title('Rate')
ax.set_xlim([min(years), max(years)])
ax.set_ylabel('Rate per x')
ax.set_xlabel('Source: '+source, horizontalalignment='right', x=1.0, fontsize=9)
ax.xaxis.set_ticks(years[::2])
fig.savefig('rate.png', dpi=144, bbox_inches='tight')
plt.close(fig)
我的pycharm安装详情:
PyCharm 2017.3.2 (Community Edition)
Build #PC-173.4127.16, built on December 18, 2017
JRE: 1.8.0_152-release-1024-b8 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 7 6.1
知道如何至少关闭交互式 gui 的打开以进行绘图(即使我没有调用 show())?这已经很有帮助了。如果有办法让这一切变得更快,那就更好了。
【问题讨论】:
-
您是否处于交互模式?如果是这样,
plt.ioff()? -
我无法在 Pycharm 2017.1.1 中重现这一点。在没有
plt.show()的情况下运行某些代码时,不会产生任何窗口,正如预期的那样。 -
@DavidG 解决了这个问题。请回复,以便我将其标记为正确答案。
标签: python matplotlib pycharm