Pythonで脳を研究する 9
引き続きPython MNEで色々と試している.
今回は磁場分布の3Dプロットのサンプルコードを出してみた.
import mne
import matplotlib.pyplot as plt
from mne.datasets import sample
from pathlib import Path
# サンプルデータのパスを取得
data_path = Path(mne.datasets.sample.data_path())
subjects_dir = data_path / "subjects" # FreeSurferの被験者ディレクトリ("sample"が含まれる)
trans_file = data_path / "MEG" / "sample" / "sample_audvis_raw-trans.fif"
# サンプルのevokedオブジェクトを読み込み
evoked_file = data_path / "MEG" / "sample" / "sample_audvis-ave.fif"
evokeds = mne.read_evokeds(evoked_file, baseline=(None, 0), proj=True, verbose=False)
# 辞書にまとめる(条件名をキーとして)
conds = ("auditory_left", "auditory_right", "visual_left", "visual_right")
evks = dict(zip(conds, evokeds))
# フィールドマップの作成
maps = mne.make_field_map(evks["auditory_left"], trans=str(trans_file),
subject="sample", subjects_dir=str(subjects_dir))
# 0.1秒付近の磁場分布をプロット(3D表示)
evks["auditory_left"].plot_field(maps, time=0.1)
plt.show()

参考文献