Matplotlib绘图窗口弹出后立即关闭,无法显示正弦曲线的问题咨询
Matplotlib绘图窗口弹出后立即关闭,无法显示正弦曲线的问题咨询
嘿,我之前也碰到过这个烦人的小问题!别着急,这其实是Matplotlib在脚本运行环境下的常见状况,咱们来快速搞定它~
你的代码逻辑本身完全没问题:生成PyTorch张量转成numpy数组、调用plt.plot()绘图这些步骤都没出错,问题出在脚本执行完就直接终止进程,导致绘图窗口跟着被强制关闭了。
给你两个实用的解决办法:
方法一:添加阻塞等待(最直接有效)
在plt.show()后面加一行代码,让程序暂停下来,等你手动触发才继续执行,这样窗口就会一直保持显示状态。推荐用Matplotlib自带的plt.waitforbuttonpress(),它会等待你在绘图窗口点击任意按键或者手动关闭窗口后,才会结束程序:import torch, time import numpy as np import pandas as pd import matplotlib.pyplot as plt # Create sine wave data pi_tensor = torch.linspace(0, 2 * np.pi, 100) sin_result = torch.sin(pi_tensor) # Plot the sine wave plt.plot(pi_tensor.numpy(), sin_result.numpy()) plt.show() # 新增这行,等待用户操作后再结束程序 plt.waitforbuttonpress()你也可以用Python内置的
input("按下回车键关闭窗口:"),效果类似,只是需要在终端输入回车而不是在绘图窗口操作。方法二:检查IDE运行配置(针对PyCharm等IDE用户)
如果你是在IDE里运行脚本,试试把运行配置里的“Run with Python console”选项关掉,换成“Run in terminal”模式。有些IDE的内置控制台会和Matplotlib的绘图窗口冲突,导致窗口一闪而过。
另外可以顺手确认下Matplotlib版本,要是装的是好几年前的旧版本,偶尔也会有这类兼容性问题,但概率很低,先试试上面的方法应该就能解决啦~
备注:内容来源于stack exchange,提问作者Sharks Charlatans
相关产品推荐
相关产品推荐

