SCCN Home
EEGLAB Home
 

EEGLAB Bugs and Suggestions

Dealing with EEGLAB bugs and suggestions:


Some known EEGLAB bugs and/or missing features:

ERP-image plotting using pop_erpimage() and erpimage(): In some rare cases, the ordinate axis for power may be wrong. If this happens, manually specify limits for coherence amplitude.

Epoch selection using pop_eegplot(): Epochs selected for rejection using eegplot() data scrolling are not saved in EEGLAB history until the epochs are actually rejected. This means that they will not be reproduced automatically in a new EEGLAB session. However, the labeled epochs are identified in the field EEG.reject.manualrej that is saved along wth the dastaset. Also, and more importantly, when the labeled epochs are actually rejected, this operation is saved in EEGLAB history.

Filtering the data using pop_eegfilt(), eegfilt(), and spec(): The eegfilt() function only implements simple FIR filtering (thereby avoiding introducing phase shifts into the data). Although two-step (hi --> low) bandpass filtering may not be equivalent to a standard bandpass filter. It is sometimes possible to highpass filter using a low frequency (e.g., above 1 Hz), then lowpass filter below a higher frequency (e.g., 50 Hz) to achieve bandpass filtering. However a bandpass filter of epoched data may fail when the low frequency edge is below 2 Hz. Consider using the IIR filtering plug-in to avoid this problem.

Spectral analysis (with no Matlab Signal Processing Toolbox): The spec() function emulates the function psd() but not the function pwelch() (psd() was replaced by pwelch(), beginning with EEGLAB 4.3, for technical reasons). As a result, the scaling of the spectrum (by the spectopo() function only) is slightly different than when the Matlab Signal Processing Toolbox is present. Also, for unknown reasons, the spec() function cannot handle frequencies that have been filtered out and may return inaccurately high power over these frequency regions.

Head plots using headplot(), and pop_headplot(): The co-registration between the 3-D electrode positions and the headplot() head model was slightly inaccurate (with a tendency to shift electrode positions towards vertex). Also, electrodes below the head equator could not be plotted. These problems have been fixed or mitigated in EEGLAB version 4.4.

Display window offset and aspect: Because we first developed EEGLAB under Unix, some windows may not look exactly the same under Windows, and some text may be truncated. Contact us if you note this occurring: We attempt to fix these details for each new Matlab release.

Urevent structure: Datasets created under EEGLAB 4.1 and loaded into 4.2 had an EEG.urevent structure created automatically. If some data containing events had been rejected BEFORE this time, then the new urevent structure information would be INCOMPLETE (i.e. to some degree wrong!!). Most new datasets created under 4.2 had the urevent structure saved correctly when the event information was first added. Be cautious about using urevent information from legacy EEGLAB 4.1 datasets.

Windows OS: In some erpimage() plots, some lines may be hidden by the 2-D image. If this happen, try simply resizing the figure. 

Under Matlab 7.0: The second topoplot image (ik.e. the second component scalp map) in the pop_envtopo() figure may the whole image, when using the EEGLAB gui. You may avoid this using the corresponding command line. Type >> eegh on the Matlab command lion to see and copy the incorrectly functioning command issued by the pop_function from the EEGLAB gui. If possible, upgrade to a later Matlab version.  

To report a BUG

Please use the EEGLAB Bugzilla website (see explanation above).