Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

mne-qt-browser

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

mne-qt-browser

A new backend based on pyqtgraph for the 2D-Data-Browser in MNE-Python

  • 0.6.3
  • PyPI
  • Socket score

Maintainers
2

mne-qt-browser

A new backend based on pyqtgraph for the 2D-Data-Browser in MNE-Python.

Screenshot of mne-qt-browser

This repository hosts the code for an alternative backend for plotting 2D-Data with MNE-Python.

The backend is based on pyqtgraph which uses Qt's Graphics View Framework for the plotting. Development started as a 2021's Google Summer of Code Project.

Installation

Install full MNE-Python version 1.0 or greater with the instructions provided here or install minimal MNE-Python with

pip

pip install "mne>=1.0" matplotlib mne-qt-browser

or

conda

conda install -c conda-forge mne-base matplotlib mne-qt-browser

Update

Refer to the MNE-Python documentation for updating MNE-Python. To update this package, do:

pip install -U mne-qt-browser

To update this package to the development version, do:

pip install -U --no-deps https://github.com/mne-tools/mne-qt-browser/archive/refs/heads/main.zip

Usage

The backend supports plotting for the following MNE-Python methods:

In the following example, we'll read M/EEG raw data from the MNE sample dataset and plot it using the qt-backend. (For mne-version >= 1.0 the qt-backend will be the default)

from pathlib import Path
import mne

sample_dir = mne.datasets.sample.data_path()
raw_path = Path(sample_dir) / 'MEG' / 'sample' / 'sample_audvis_raw.fif'
raw = mne.io.read_raw(raw_path)

mne.viz.set_browser_backend('qt')  # Enable mne-qt-browser backend if mne < 1.0
raw.plot(block=True)

If the plot is not showing, search for solutions in the troubleshooting section below.

This will use the mne-qt-browser for the current Python session. If you want to make this change permanent, so you don't have to use the set_browser_backend() each time after restarting Python, run the following line to modify your MNE configuration file:

import mne
mne.set_config('MNE_BROWSER_BACKEND', 'qt')

Troubleshooting

Running from a script

If you are running a script containing raw.plot() like

python example_script.py

the plot will not stay open when the script is done.

To solve this either change raw.plot() to raw.plot(block=True) or run the script with the interactive flag

python -i example_script.py

IPython

If the integration of the Qt event loop is not activated for IPython, a plot with raw.plot() will freeze. Do avoid that either change raw.plot() to raw.plot(block=True) or activate the integration of the event loop with

%gui qt5

Report Bugs & Feature Requests

Please report bugs and feature requests in the issues of this repository.

Development and testing

You can run a benchmark locally with:

pytest -m benchmark mne_qt_browser

To run the PyQtGraph tests you have to run:

pytest mne_qt_browser/tests/test_pg_specific.py

Additionally, clone mne-python, and then run:

pytest -m pgtest ../mne-python/mne/viz/tests

If you do not have OpenGL installed, this will currently raise errors, and you'll need to add this line to mne/conftest.py after the error:: line:

    ignore:.*PyOpenGL was not found.*:RuntimeWarning

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc