You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在MNE-Python中绘制完整EEG记录而非滚动查看epochs?

MNE绘制完整单通道EEG信号的三种实现方法

1. 给raw.plot()添加参数调整视图

默认raw.plot()会加载数据中的事件标记,进而触发类epochs的视图。只需通过参数关闭事件显示,就能切换到连续信号视图:

raw.plot(picks="Pz", events=None, duration=60)
  • events=None:强制不加载任何事件,避免触发epochs视图
  • duration=60:设置单次显示的时长(单位:秒),默认是10秒,调大后能查看更长段的连续信号

2. 使用MNE内置的plot_time_series函数

MNE 0.24版本之后提供了mne.viz.plot_time_series(),专门用于绘制连续时间序列,不会附带事件/epochs相关的视图,用法如下:

import mne

# 提取Pz通道的数据和时间轴
data, times = raw.get_data(picks="Pz", return_times=True)
# 绘制连续信号
mne.viz.plot_time_series(times, data.T, channel_names=["Pz"])

这个函数保留了MNE绘图的交互性,同时不会受事件标记干扰。

3. 提取原始数据后用Matplotlib绘制

如果习惯Pandas绘图的风格,可以直接从Raw对象中提取数据,用Matplotlib手动绘制:

import matplotlib.pyplot as plt

# 提取Pz通道的数据和时间轴
data, times = raw.get_data(picks="Pz", return_times=True)
# 绘制信号
plt.figure(figsize=(12, 4))
plt.plot(times, data[0])
plt.xlabel("Time (s)")
plt.ylabel("Amplitude (µV)")
plt.title("EEG Signal at Channel Pz")
plt.show()

这种方式完全自定义,能按需调整图表的样式和布局。

内容的提问来源于stack exchange,提问作者Jonas van Nijnatten

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 19:52:05