raw.plot() not working for EGI data file

Hi, MNE-users,

I use mne.io.read_raw_egi to load the simple binary files from EGI into a
raw object. Then when I use raw.plot(), it complains that "ValueError: Must
supply either Raw or Epochs" (Line 1492 in utils.py in the function
"_compute_scalings"). The error is raised because mne doesn't consider the
raw object created from EGI as an instance of the BaseRaw class.
"type(raw)" returns mne.io.egi.egi.RawEGI.

I only started to see this error after a recent update of the mne from 0.10
to 0.15.dev0, and raw.plot() worked fine for EGI files in my previous
version of mne.

I wonder if anyone knows a solution to this problem. Thank you!

Best

Le
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.nmr.mgh.harvard.edu/pipermail/mne_analysis/attachments/20170424/ec6d5177/attachment.html

For now, save the raw to a fiff file via raw.save and load it into memory.
The round trip will ensure things are correct. We might probably want to
relax type checks. Technically, after reading the EGI data the way data are
represented does not match a hundred percent the default MNE data container.

Denis

Hi Le,

I'm unable to recreate this error using our test file.


raw = mne.io.read_raw_egi('/Users/teon/packages/mne-python/mne/io/egi/te

   ...: sts/data/test_egi.raw')

raw.plot()

When I do an isinstance(raw, mne.io.BaseRaw), it returns True. Could you
provide a gist and a sample file to recreate the problem?

teon <http://teonbrooks.github.io>

Thank you, Teon and Danis! After I saw your posts, raw.plot() started to
work. I don't think I did anything to correct this error, I just reloaded
the data and made some plots. So I have no idea what went on beforehand
that caused isinstance(raw, mne.io.BaseRaw) to return False when I checked
it.

Hope this error won't show up again. If it does show up, I will upload a
sample data file for diagnosis. Thank you very much for your time looking
into this!

Best
Le