-
Notifications
You must be signed in to change notification settings - Fork 1
/
sensor_plot_waveform.py
76 lines (55 loc) · 1.92 KB
/
sensor_plot_waveform.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
import mne
from mne import fiff
import numpy as np
import pylab as pl
import argparse
###example call
##run plot_sensor_waveform.py ga_BaleenHP_All_meg-n24-goodC ga_BaleenHP_All_meg-n24-goodC 0 1 348 related unrelated
###Plotting parameters###
xmin,xmax = [-100, 601]
ymin,ymax = [6,-6] ##EEG
#ymin, ymax = [-1.5,1.5] ##MEG
lWidth = 4
color1 = 'k'
color2 = 'r'
lineStyle1 = 'solid'
lineStyle2 = 'solid'
scalingFactor = 1e6 #EEG
#scalingFactor = 1e13
####################################
parser = argparse.ArgumentParser(description='Get input')
parser.add_argument('prefix1',type=str)
parser.add_argument('prefix2',type=str)
parser.add_argument('set1',type=int)
parser.add_argument('set2',type=int)
parser.add_argument('sensor',type=int)
parser.add_argument('label1',type=str)
parser.add_argument('label2',type=str)
args=parser.parse_args()
data_path = '/cluster/kuperberg/SemPrMM/MEG/results/sensor_level/ga_fif/'
file1 = data_path + args.prefix1 +'-ave.fif'
evoked1 = fiff.Evoked(file1,setno=args.set1,baseline=(-100,0),proj=False)
data1=evoked1.data
wave1 = data1[args.sensor][:]*scalingFactor
print args.sensor
times=evoked1.times*1000
file2 = data_path + args.prefix2 + '-ave.fif'
evoked2 = fiff.Evoked(file2,setno=args.set2,baseline=(-100,0),proj=False)
data2=evoked2.data
wave2 = data2[args.sensor][:]*scalingFactor
###################
font = {
'weight' : 'bold',
'size' : 16}
pl.rc('font', **font)
pl.clf()
pl.plot(times, wave1,color=color1,linewidth=lWidth,linestyle=lineStyle1)
pl.plot(times, wave2,color=color2,linewidth=lWidth,linestyle=lineStyle2)
pl.plot(times,wave1*0,color='k')
pl.legend((args.label1,args.label2),loc="upper left")
pl.ylim([ymin,ymax])
pl.xlim([xmin,xmax])
pl.xlabel('time (ms)')
#pl.ylabel('microVolts')
outFile = 'scratch/'+args.label1+'-'+args.prefix1+'-'+str(args.set1)+'-'+args.label2+'-'+args.prefix2+'-'+str(args.set2)+'-'+evoked1.info['ch_names'][args.sensor]+'.png'
pl.savefig(outFile)