<div dir="ltr"><div><div><div><div>Hi Mathieu,<br><br></div>it&#39;s generally best to follow up your questions on the mailing list so that others can checkout the archives.<br><br><div><div><div><div><div><div>To make an Evoked object you should be able to do:<br></div><br>from mne import EvokedArray, create_info<br>sampling_freq = 128<br></div><div>info = create_info(n_channels, sampling_freq, &#39;eeg&#39;)</div>evoked = EvokedArray(your_data_array, info=info, tmin=0.)<br><br></div>Then you can make a montage and attach it to the evoked object:<br><br></div>from mne.channels import Montage<br></div><div>kind = 2  # means eeg channels<br></div>montage = Montage(position_xyz, info, kind=2, range(n_channels))<br></div>evoked.set_montage(montage)<br><br></div><div>You can then use the plotting function that I described in the previous email to plot in 3D. Note that MNE has a wider spectrum of functions for 2D plottings (have a look at evoked.plot(), plot_topo(), plot_topomap(), plot_*() methods). Tu use them you&#39;ll need to make a 2D layout (mne.channels.make_eeg_layout). <br></div><div><br></div>Hope that helps,<br><br></div>JR<br><br></div>PS: yes I am ;)<br><div><div><div><br><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote"><div dir="ltr"><div>Hi Jean-Rémi (Are you French?)</div><div><br></div><div>Thanks for your help. </div><div>I&#39;ve
 some difficulties with the mne.read_evokeds function. At the moment, I 
have a grand average data 19(channels) x 300 (datapoints) numpy 
array and a custom montage instance from the mne.channels.Montage map 
(see attached). </div><div>How could I proceed to (i) generate  a read_evokeds() object,  and (ii) plot a 3D map in a specific time window...</div><div><br></div><div>Best,</div><div>Mathieu</div></div></blockquote></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 20 June 2016 at 10:13, JR KING <span dir="ltr">&lt;<a href="mailto:jeanremi.king@gmail.com" target="_blank">jeanremi.king@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Hi Mathieu,<br><br></div>to complete Jaakko&#39;s answer, you can plot 3D EEG projection using mne.viz import.evoked_field. For example:<br><br>```<br>import os.path as op<br>import mne<br>from mne.forward import make_field_map<br>from mne.viz import plot_evoked_field<br><br></div># get data <br><div>data_path = mne.datasets.sample.data_path()<br>subjects_dir = data_path + &#39;/subjects&#39;<br>trans_fname = op.join(data_path, &#39;MEG&#39;, &#39;sample&#39;, &#39;sample_audvis_raw-trans.fif&#39;)<br>fname = op.join(data_path, &#39;MEG&#39;, &#39;sample&#39;, &#39;sample_audvis-ave.fif&#39;)<br>evoked = mne.read_evokeds(fname, baseline=(None, 0), proj=True)[0]<br><br></div><div># select eeg channels only<br></div><div>evoked.pick_types(eeg=True, meg=False)<br><br></div><div># plot field maps<br></div><div>maps = make_field_map(evoked, trans=trans_fname, subjects_dir=subjects_dir,<br>                      subject=&#39;sample&#39;, n_jobs=-1, meg_surf=&#39;head&#39;)<br>plot_evoked_field(evoked, maps, time=.1)<br>```<br><br></div><div>Hope that helps,<br><br></div><div>Jean-Rémi<br></div><div><br><br></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On 20 June 2016 at 09:00, Jaakko Leppäkangas <span dir="ltr">&lt;<a href="mailto:jaeilepp@student.jyu.fi" target="_blank">jaeilepp@student.jyu.fi</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div>Hi Mathieu,<br></div>currently there is no way to project to 3d.<br><br></div>For the second point you could use a montage when reading the data. The readers for EEG data have a montage parameter that you could use to set the channel locations (see for example <a href="http://mne-tools.github.io/dev/generated/mne.io.read_raw_edf.html#mne.io.read_raw_edf" target="_blank">http://mne-tools.github.io/dev/generated/mne.io.read_raw_edf.html#mne.io.read_raw_edf</a> and <a href="http://mne-tools.github.io/dev/generated/mne.channels.read_montage.html#mne.channels.read_montage" target="_blank">http://mne-tools.github.io/dev/generated/mne.channels.read_montage.html#mne.channels.read_montage</a>). In your case, since you have some custom locations, one option would be to manually add entries for &#39;OL&#39; and &#39;OR&#39; to the standard_1020.elc file, if you know their locations.<br><br></div>-Jaakko<br></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div>On 18 June 2016 at 20:56, Servant Mathieu <span dir="ltr">&lt;<a href="mailto:servant.mathieu@gmail.com" target="_blank">servant.mathieu@gmail.com</a>&gt;</span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr"><div>I&#39;m new to mne, and would like to compute some topographic voltage maps from my EEG grand-averaged data. </div><div><br></div><div>I have two specific questions:</div><div>(i) The plot_topomap function plots 2D maps. Is there a way to plot 3D maps? </div><div>(ii) My data_ is a 19 (electrodes) x 300 (datapoints) numpy array. Sampling rate was 250 Hz, and the 300 datapoints correspond to a -200 1000 ms epoch (0 being the stimulus-locking event). </div><div>-Is there a simple way to plot topographies at say, 300 ms after stimulus onset, or topographies over the average of a given time window (300-500ms after stimulus onset)?</div><div>-I need to provide the (x,y) coordinates for each EEG channel. My channels are:</div><div>electrodes = [&#39;F3&#39;,&#39;F4&#39;,&#39;C3&#39;,&#39;C4&#39;,&#39;P3&#39;,&#39;P4&#39;,&#39;PO3&#39;,&#39;PO4&#39;,&#39;O1&#39;,&#39;O2&#39;,&#39;OL&#39;,&#39;OR&#39;,&#39;T3&#39;,&#39;T4&#39;,&#39;T5&#39;,&#39;T6&#39;,&#39;Fz&#39;,&#39;Cz&#39;,&#39;Pz&#39;]</div><div>These electrodes are standard international 10/20 System sites, except OL (halfway between 01 and T5) and OL (halfway between 02 and T6). Given these locations, which coordinate array should I provide to the plot_topomap function ? </div><div><br></div><div>Thanks for your help!</div><span><font color="#888888"><div>Mathieu<br></div><div><br></div></font></span></div>
<br></div></div>_______________________________________________<br>
Mne_analysis mailing list<br>
<a href="mailto:Mne_analysis@nmr.mgh.harvard.edu" target="_blank">Mne_analysis@nmr.mgh.harvard.edu</a><br>
<a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
<br>
<br>
The information in this e-mail is intended only for the person to whom it is<br>
addressed. If you believe this e-mail was sent to you in error and the e-mail<br>
contains patient information, please contact the Partners Compliance HelpLine at<br>
<a href="http://www.partners.org/complianceline" rel="noreferrer" target="_blank">http://www.partners.org/complianceline</a> . If the e-mail was sent to you in error<br>
but does not contain patient information, please contact the sender and properly<br>
dispose of the e-mail.<br>
<br></blockquote></div><br></div>
<br>_______________________________________________<br>
Mne_analysis mailing list<br>
<a href="mailto:Mne_analysis@nmr.mgh.harvard.edu" target="_blank">Mne_analysis@nmr.mgh.harvard.edu</a><br>
<a href="https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis" rel="noreferrer" target="_blank">https://mail.nmr.mgh.harvard.edu/mailman/listinfo/mne_analysis</a><br>
<br>
<br>
The information in this e-mail is intended only for the person to whom it is<br>
addressed. If you believe this e-mail was sent to you in error and the e-mail<br>
contains patient information, please contact the Partners Compliance HelpLine at<br>
<a href="http://www.partners.org/complianceline" rel="noreferrer" target="_blank">http://www.partners.org/complianceline</a> . If the e-mail was sent to you in error<br>
but does not contain patient information, please contact the sender and properly<br>
dispose of the e-mail.<br>
<br></blockquote></div><br></div>
</div></div></blockquote></div><br></div>