예제 #1
0
파일: _figure.py 프로젝트: mh105/mne-python
def _get_browser(show, block, **kwargs):
    """Instantiate a new MNE browse-style figure."""
    from .utils import _get_figsize_from_config
    figsize = kwargs.setdefault('figsize', _get_figsize_from_config())
    if figsize is None or np.any(np.array(figsize) < 8):
        kwargs['figsize'] = (8, 8)
    kwargs['splash'] = True if show else False
    if kwargs.get('theme', None) is None:
        kwargs['theme'] = get_config('MNE_BROWSER_THEME', 'auto')
    if kwargs.get('overview_mode', None) is None:
        kwargs['overview_mode'] = get_config('MNE_BROWSER_OVERVIEW_MODE',
                                             'channels')

    # Initialize browser backend
    backend_name = get_browser_backend()
    # Check mne-qt-browser compatibility
    if backend_name == 'qt':
        import mne_qt_browser
        from .. import BaseEpochs
        from ..fixes import _compare_version
        is_ica = kwargs.get('ica', False)
        is_epochs = isinstance(kwargs.get('inst', False), BaseEpochs)
        not_compat = _compare_version(mne_qt_browser.__version__, '<', '0.2.0')
        inst_str = 'ICA' if is_ica else 'Epochs'
        if not_compat and (is_ica or is_epochs):
            logger.info(f'You set the browser-backend to "qt" but your'
                        f' current version {mne_qt_browser.__version__}'
                        f' of mne-qt-browser is too low for {inst_str}.'
                        f'Update with pip or conda.'
                        f'Defaults to matplotlib.')
            with use_browser_backend('matplotlib'):
                # Initialize Browser
                fig = backend._init_browser(**kwargs)
                _show_browser(show=show, block=block, fig=fig)
                return fig

    # Initialize Browser
    fig = backend._init_browser(**kwargs)
    _show_browser(show=show, block=block, fig=fig)

    return fig
예제 #2
0
def _get_browser(**kwargs):
    """Instantiate a new MNE browse-style figure."""
    from .utils import _get_figsize_from_config
    figsize = kwargs.setdefault('figsize', _get_figsize_from_config())
    if figsize is None or np.any(np.array(figsize) < 8):
        kwargs['figsize'] = (8, 8)
    # Initialize browser backend
    _init_browser_backend()

    # Initialize Browser
    browser = backend._init_browser(**kwargs)

    return browser