[FieldTrip] Beamforming / ft_sourceplot: Different results between 3D-Surface Plot vs. 2D-Slice/Ortho Plot

Brilliant.OE8891 at mh-hannover.de Brilliant.OE8891 at mh-hannover.de
Thu Apr 7 10:09:29 CEST 2022

Dear Jan-Mathijs,

Thank you very much for the input!
I’ll check how to do that.

Best regards,


Von: fieldtrip [mailto:fieldtrip-bounces at science.ru.nl] Im Auftrag von Schoffelen, J.M. (Jan Mathijs) via fieldtrip
Gesendet: Donnerstag, 31. März 2022 17:07
An: FieldTrip discussion list <fieldtrip at science.ru.nl>
Cc: Schoffelen, J.M. (Jan Mathijs) <janmathijs.schoffelen at donders.ru.nl>
Betreff: Re: [FieldTrip] Beamforming / ft_sourceplot: Different results between 3D-Surface Plot vs. 2D-Slice/Ortho Plot

Hi Brilliant,

In order for ft_sourceplot’s surface option to make sense, you need to be sure that the template surface that you use for the visualization is in register with your functional data. It seems that this is off in your case.

Best wishes,

On 31 Mar 2022, at 16:25, Brilliant via fieldtrip <fieldtrip at science.ru.nl<mailto:fieldtrip at science.ru.nl>> wrote:

Dear Fieldtrip community,

My name is Brilliant (yes, it’s my real name ☺) and I am a PhD Student at Kral Lab at Hannover Medical School, Germany.
I am currently doing Time-Frequency Analysis on EEG-Data and am trying to compute the Source Reconstruction with the Beamforming in Fieldtrip.
The EEG-Data were collected in experiments, which the participants listened to auditory stimuli and had to respond by pressing a button.
In the Grand-Mean of the Time-Frequency Plot Alpha desynchronization were observed and we would like to know the source/s.

When observing the figures from the result of Source Reconstruction via Beamforming, it seems like the 3D-Surface Figure (Figure A) does not correspond well with the 2D-Slice Figure (Figure B).
For example in the 3D-Surface Figure, we could not see the strong projection on left occipital hemisphere although in the 2D-Ortho Figure it can be seen (Figure C).
I play around with the parameter of the ‘cfg.projthresh’, but still cannot see the source activation in the 3D-Surface Figure as clearly as in the 2D-Figures.
Another question related to this is why we don’t see much activation in the auditory cortex.

The code that I use to plot the results are as follow.

Any feedbacks and suggestions would be appreciated.
Thank you and kindest regards.



source_diff_mni          = source_diff;  %Calculated power difference
source_diff_mni.coordsys = 'mni';        %Label the coordinate system as 'mni'
absPows = abs(source_diff_mni.avg.pow);  %Check the maximum power
maxPow  = max(absPows);
maxPow  = round (maxPow,2);

% Plot 3D
cfg = [];
cfg.method         = 'surface';
cfg.funparameter   = 'pow';
cfg.projmethod     = 'nearest';
cfg.surfinflated   = 'surface_inflated_both_caret.mat';
%cfg.projthresh     = 0.5; %more mean less projection
cfg.funcolorlim    = [-maxPow maxPow];
cfg.camlight       = 'no';
ft_sourceplot(cfg, source_diff_mni);

brainnetome = ft_read_atlas('BNA_MPM_thr25_1.25mm.nii') %Load Atlas
atlas = brainnetome;
mri = ft_read_mri('Subject01.mri'); %Load MRI

% Interpolate the source_diff_mni to the MRI
cfg = [];
cfg.voxelcoord      = 'yes';
cfg.parameter       = 'pow';
cfg.interpmethod    = 'cubic';
source_diff_mri = ft_sourceinterpolate(cfg, source_diff_mni, mri);

% Plot 2D
threshold = 0.3*maxPow; %Masking to not show any power below 30% max power
threshold = round(threshold,2);

source_diff_mri_mask = source_diff_mri;
source_diff_mri_mask.mask = (source_diff_mri_mask.pow>threshold & source_diff_mri_mask.pow<maxPow) | (source_diff_mri_mask.pow<-threshold & source_diff_mri_mask.pow>-maxPow);

% Slice 2D-Plot
cfg                  = [];
cfg.method           = 'slice';
cfg.atlas            = atlas;
cfg.anparameter      = 'tissue';
cfg.maskparameter    = 'mask'
cfg.funparameter     = 'pow';
cfg.interpmethod     = 'cubic';
cfg.funcolorlim      = [-maxPow maxPow];
cfg.nslices          = 9;
cfg.slicedim        = 1; %Slice Sagital

% Ortho 2D-Plot
cfg                 = [];
cfg.method          = 'ortho';
cfg.atlas           = atlas;
cfg.maskparameter   = 'mask'
cfg.funparameter    = 'pow';
cfg.interpmethod    = 'cubic';
cfg.location        =  [-3 -47 68]; %Right STG 41/42
cfg.funcolorlim     = [-maxPow maxPow];


Brilliant, M.Sc.
Pronouns: he, him, his

Medizinische Hochschule Hannover
Institut für AudioNeuroTechnologie (VIANNA)
OE 8891, M20, Ebene 01, Raum 1640
Stadtfelddamm 34
30625 Hannover

Tel.: +49 511 532-1532 (EEG-Labor)
Email: brilliant.OE8891 at mh-hannover.de<mailto:brilliant.OE8891 at mh-hannover.de>
Web: www.neuroprostheses.com<https://urldefense.com/v3/__http:/www.neuroprostheses.com/__;!!HJOPV4FYYWzcc1jazlU!-cDpG1sOTxPXYrtiO1BfbU_01CE_cJTzq1cWVK1OsIracSpeRRM4XQlWHqiokYBk9gUH1hyfp9VnoMwAG1nVr9xqHNjoRWoEEMmR3w$>

fieldtrip mailing list

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/fieldtrip/attachments/20220407/b01e601c/attachment.htm>

More information about the fieldtrip mailing list