我正在尝试使用mne数据库运行脚本。在某些时候,我尝试使用mayavi绘制一个交互式图形:
fig = mne.viz.plot_alignment(show_axes=True, dig='fiducials', surfaces='head', bem=sphere, info=info)
mayavi场景窗口出现,但它是空白且没有响应。 Pycharm中没有伴随的错误消息。当我尝试从他们的数据库中绘制交互式图形时,它就可以正常工作:
from mayavi import mlab
mlab.test_plot3d()
mlab.show()
根据其他建议,我在脚本的开头添加了以下代码行:
matplotlib.use('qt5agg')
os.environ['ETS_TOOLKIT'] = 'qt'
os.environ['QT_API'] = 'pyqt5'
set_3d_backend('mayavi')
我正在使用Pycharm 2020.2.1。我使用Anaconda3创建带有conda的程序包。我使用Windows10。python版本是3.6.7。
mne.sys_info()打印以下内容:
Platform: Windows-10-10.0.19041-SP0
Python: 3.6.7 |Anaconda, Inc.| (default, Oct 28 2018, 19:44:12) [MSC v.1915 64 bit (AMD64)]
Executable: C:\Users\ellis\Anaconda3\envs\pysurfer_conda\python.exe
CPU: Intel64 Family 6 Model 158 Stepping 10, GenuineIntel: 12 cores
Memory: 15.7 GB
mne: 0.21.0
numpy: 1.19.1 {blas=mkl_rt, lapack=mkl_rt}
scipy: 1.5.2
matplotlib: 3.3.1 {backend=Qt5Agg}
sklearn: 0.23.2
numba: 0.51.2
nibabel: 3.1.1
cupy: Not found
pandas: 1.1.3
dipy: 1.2.0
mayavi: 4.7.1
pyvista: 0.26.1 {pyvistaqt=0.2.0, OpenGL 4.5.0 - Build 27.20.100.8587 via Intel(R) UHD Graphics 630}
vtk: 8.2.0
PyQt5: 5.12.3
也许值得注意:我也尝试使用Pyvista。发生了类似的问题:该图显示了(现在我可以实际看到它正在绘制的内容了),但是当我单击该图时,它没有响应,然后崩溃了。
有人可以帮我吗?
############################################# ############################ 编辑:
开始工作!不知道为什么它现在可以工作..但是无论如何
我正在使用:
Platform: Windows-10-10.0.19041-SP0
Python: 3.8.6 (tags/v3.8.6:db45529, Sep 23 2020, 15:52:53) [MSC v.1927 64 bit (AMD64)]
Executable: C:\Users\ellis\PycharmProjects\pythonProject1\venv\Scripts\python.exe
CPU: Intel64 Family 6 Model 158 Stepping 10, GenuineIntel: 12 cores
Memory: Unavailable (requires "psutil" package)
mne: 0.21.0
numpy: 1.19.2 {blas=D:\\a\\1\\s\\numpy\\build\\openblas_info, lapack=D:\\a\\1\\s\\numpy\\build\\openblas_lapack_info}
scipy: 1.5.2
matplotlib: 3.3.2 {backend=Qt5Agg}
所以用Pyvista绘图。如果我仅使用任何mne.viz函数,仍会得到无响应的图。 但是,由于某种原因,如果我事先绘制此图:
times = np.arange(0.1, 0.3, 0.01)
fig, anim = evoked.animate_topomap(
times=times, ch_type='eeg', frame_rate=2, time_unit='s', blit=False)
然后它就可以正常工作。.是的,很奇怪,但是它对我有用,也许其他人会发现它有用:)