与MNE数据库一起使用时,Majavi图无响应

时间:2020-10-20 10:42:37

标签: python mayavi mne-python pyvista

我正在尝试使用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)

然后它就可以正常工作。.是的,很奇怪,但是它对我有用,也许其他人会发现它有用:)

0 个答案:

没有答案
相关问题