【问题标题】:How to create new windows for subsequent matplotlib plots?如何为后续的 matplotlib 图创建新窗口?
【发布时间】:2017-07-06 17:04:39
【问题描述】:

当前使用 Python 3.6.0 |Continuum Analytics, Inc.| (默认,2016 年 12 月 23 日,11:57:41)在 Windows(64 位)上。

我想要一个我正在编写的程序来生成两个不同的图。一个图将有三个单独的图表,然后我想要一个显示直方图的单独窗口。

plt.subplot(311)
plt.plot(z)
plt.xlabel('Time(s)', fontsize=14)
plt.ylabel('Amplitude(v)', fontsize=8)
fig.subplots_adjust(hspace=.5)
plt.figure
plt.subplot(312)
plt.plot(timey[0:(len(freq))//2],y)
plt.xlabel('Frequency(Hz)', fontsize=14)
plt.ylabel('Amplitude(V)', fontsize=8)
plt.subplot(313)
plt.plot(fre, psd)
plt.xlabel('Frequency(Hz)', fontsize=14)
plt.ylabel('Power Spectrum Density(Watts/Hz)', fontsize =8)
plt.show()
np.savetxt( file ,y, delimiter='  ',newline='  ')
plt.savefig('FFT'+i+'.png', bbox_inches='tight')
wait = input("PRESS ENTER TO CONTINUE.")   #an attempt at breakpoints
plt.figure
plt.subplot(111)
plt.plot(bin[0:bnn],his)
plt.show()
plt.savefig('Histogram'+i+'.png', bbox_inches='tight')

即使使用plt.figure(),除非我使用plt.subplot(111),否则我仍然会在现有绘图之上绘制,这会擦除原始绘图并将新绘图放置在同一窗口中。我希望生成两个单独的窗口。我已经阅读了几个以前的问题,但无济于事。我尝试使用%matplotlib qt 或我已经导入的 mpl ,但也没有用。也许我不明白这个的语法?

【问题讨论】:

  • 您确定拨打plt.figure()(带括号)吗?

标签: python matplotlib plot graph


【解决方案1】:

首先注意plt.figure 什么都不做。您需要致电plt.figure()。但是,这并不能解决实际问题。

由于带有 3 个子图的旧图仍然是您想要开始新图的当前图,plt.figure() 只会让您获得旧图。

要获得新图,请使用新图号。

plt.figure(2)

【讨论】:

    猜你喜欢
    • 2015-01-13
    • 1970-01-01
    • 2012-07-01
    • 1970-01-01
    • 2017-08-28
    • 1970-01-01
    • 2012-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多