脑电图(EEG)是一种非侵入性技术,用于记录大脑的电活动。随着科技的发展,脑电图仪的应用越来越广泛,不仅在医学领域,还在心理学、神经科学、教育等领域发挥着重要作用。本文将详细介绍9种实用的脑电图趋势图,帮助读者更好地理解大脑的秘密。
1. 基线图
基线图是脑电图中最基本的一种趋势图,用于显示大脑在安静状态下的电活动。通过观察基线图,可以初步了解大脑的生理状态。
import matplotlib.pyplot as plt
import numpy as np
# 模拟基线图数据
time = np.linspace(0, 60, 1000)
baseline_eeg = np.random.normal(0, 1, 1000)
plt.figure(figsize=(10, 5))
plt.plot(time, baseline_eeg, label='Baseline EEG')
plt.xlabel('Time (s)')
plt.ylabel('Amplitude (μV)')
plt.title('Baseline EEG')
plt.legend()
plt.show()
2. 事件相关电位(ERP)
事件相关电位是脑电图在特定刺激下产生的电位变化。通过分析ERP,可以了解大脑对不同刺激的反应。
# 模拟ERP数据
erp_eeg = np.random.normal(0, 1, 1000)
erp_time = np.linspace(0, 60, 1000)
plt.figure(figsize=(10, 5))
plt.plot(erp_time, erp_eeg, label='ERP EEG')
plt.xlabel('Time (s)')
plt.ylabel('Amplitude (μV)')
plt.title('Event-Related Potentials (ERP)')
plt.legend()
plt.show()
3. 脑电波频谱图
脑电波频谱图可以将脑电图信号分解为不同频率的成分,帮助我们了解大脑在不同频率下的电活动。
from scipy.signal import welch
# 模拟脑电波频谱图数据
frequencies, power = welch(baseline_eeg, fs=100)
plt.figure(figsize=(10, 5))
plt.pcolormesh(frequencies, np.arange(len(power)), power, shading='gouraud')
plt.xlabel('Frequency (Hz)')
plt.ylabel('Power')
plt.title('EEG Power Spectrum')
plt.colorbar(label='Power (μV²/Hz)')
plt.show()
4. 脑电地形图
脑电地形图可以直观地展示大脑不同区域的电活动分布。
import numpy as np
import matplotlib.pyplot as plt
# 模拟脑电地形图数据
eeg_data = np.random.normal(0, 1, (100, 100))
plt.figure(figsize=(10, 5))
plt.imshow(eeg_data, cmap='viridis', aspect='auto')
plt.xlabel('Channel')
plt.ylabel('Channel')
plt.title('EEG Topography')
plt.colorbar(label='Amplitude (μV)')
plt.show()
5. 脑电相干图
脑电相干图可以反映大脑不同区域之间的信息传递。
from scipy.signal import coherence
# 模拟脑电相干图数据
frequencies, coherence = coherence(baseline_eeg, baseline_eeg, fs=100)
plt.figure(figsize=(10, 5))
plt.pcolormesh(frequencies, np.arange(len(coherence)), coherence, shading='gouraud')
plt.xlabel('Frequency (Hz)')
plt.ylabel('Coherence')
plt.title('EEG Coherence')
plt.colorbar(label='Coherence')
plt.show()
6. 脑电事件相关同步图
脑电事件相关同步图可以反映大脑不同区域在特定事件下的同步性。
# 模拟脑电事件相关同步图数据
event_related_sync = np.random.normal(0, 1, (100, 100))
plt.figure(figsize=(10, 5))
plt.imshow(event_related_sync, cmap='viridis', aspect='auto')
plt.xlabel('Channel')
plt.ylabel('Channel')
plt.title('EEG Event-Related Synchronization')
plt.colorbar(label='Amplitude')
plt.show()
7. 脑电动态谱分析
脑电动态谱分析可以了解大脑在不同时间尺度下的电活动变化。
from scipy.signal import spectrogram
# 模拟脑电动态谱分析数据
time, freq, Sxx = spectrogram(baseline_eeg, fs=100)
plt.figure(figsize=(10, 5))
plt.pcolormesh(time, freq, Sxx, shading='gouraud')
plt.xlabel('Time (s)')
plt.ylabel('Frequency (Hz)')
plt.title('EEG Dynamic Spectrum Analysis')
plt.colorbar(label='Power (μV²/Hz)')
plt.show()
8. 脑电事件相关去卷积
脑电事件相关去卷积可以揭示大脑不同区域在特定事件下的时间序列。
from scipy.signal import deconvolve
# 模拟脑电事件相关去卷积数据
impulse_response = np.random.normal(0, 1, 100)
event_related_eeg = np.random.normal(0, 1, 1000)
deconvolved_eeg = deconvolve(event_related_eeg, impulse_response)
plt.figure(figsize=(10, 5))
plt.plot(deconvolved_eeg)
plt.xlabel('Time (s)')
plt.ylabel('Amplitude (μV)')
plt.title('EEG Event-Related Deconvolution')
plt.show()
9. 脑电特征提取
脑电特征提取是脑电图应用的重要环节,可以通过提取脑电信号中的特定特征来分析大脑状态。
from sklearn.decomposition import PCA
# 模拟脑电特征提取数据
eeg_features = np.random.normal(0, 1, (100, 100))
pca = PCA(n_components=2)
pca_result = pca.fit_transform(eeg_features)
plt.figure(figsize=(10, 5))
plt.scatter(pca_result[:, 0], pca_result[:, 1])
plt.xlabel('Principal Component 1')
plt.ylabel('Principal Component 2')
plt.title('EEG Feature Extraction')
plt.show()
通过以上9种实用的脑电图趋势图,我们可以更好地了解大脑的秘密。在实际应用中,可以根据具体需求选择合适的趋势图进行分析。
