Skip to content

Commit

Permalink
Merge branch 'release/v0.2.8'
Browse files Browse the repository at this point in the history
  • Loading branch information
EtienneCmb committed Jun 26, 2017
2 parents 219ee6d + 0df9e3a commit 3dfd406
Show file tree
Hide file tree
Showing 58 changed files with 5,942 additions and 7,428 deletions.
19 changes: 17 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ notifications:
email: false
python:
# We don't actually use the Travis Python, but this keeps it organized.
- "3.5"
- "3.6"
install:
# - sudo apt-get update
# Deactivate travis environnement :
Expand All @@ -24,13 +24,28 @@ install:
- conda info -a

# Replace dep1 dep2 ... with your dependencies
- conda create -q -n testenv python=$TRAVIS_PYTHON_VERSION numpy scipy matplotlib=1.5.1 pip
- conda create -q -n testenv python=$TRAVIS_PYTHON_VERSION numpy scipy matplotlib pip
- source activate testenv
# - pip install pyqt5
- pip install setuptools
- pip install nose
- pip install codecov
# - pip install pytest pytest-cov
- cd ../
- pip install -e git+https://github.com/vispy/vispy#egg=vispy-dev
- cd visbrain/
- pip install .
# - pip install -r requirements.txt

# script:
# - py.test -v --cov=./

# # after_success:
# # - ./tools/travis-upload-wheel.sh
script: bash build_install.sh

notifications:
email: false

after_success:
- codecov
33 changes: 17 additions & 16 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,20 @@
.. image:: https://travis-ci.org/EtienneCmb/visbrain.svg?branch=master
:target: https://travis-ci.org/EtienneCmb/visbrain

.. image:: https://codecov.io/gh/EtienneCmb/visbrain/branch/master/graph/badge.svg
:target: https://codecov.io/gh/EtienneCmb/visbrain

.. image:: https://badge.fury.io/py/visbrain.svg
:target: https://badge.fury.io/py/visbrain

Visbrain
########

.. figure:: https://github.com/EtienneCmb/visbrain/blob/master/docs/picture/visbrain.png
:align: center


**Visbrain** is an open-source python package and provides hardware accelerated visualizations mainly for neuroscientific data. It is based on top of `VisPy <http://vispy.org/>`_ and PyQt and is distributed under the 3-Clause BSD license. We also provide an online `documentation <http://etiennecmb.github.io/visbrain/>`_, `examples and datasets <https://github.com/EtienneCmb/visbrain/tree/master/examples>`_ and can also be downloaded from `PyPi <https://pypi.python.org/pypi/visbrain/>`_.
**Visbrain** is an open-source python package and provides hardware accelerated visualizations mainly for neuroscientific data. It is based on top of `VisPy <http://vispy.org/>`_ and PyQt and is distributed under the 3-Clause BSD license. We also provide an on line `documentation <http://etiennecmb.github.io/visbrain/>`_, `examples and datasets <https://github.com/EtienneCmb/visbrain/tree/master/examples>`_ and can also be downloaded from `PyPi <https://pypi.python.org/pypi/visbrain/>`_.

Right now, four modules are implemented, with the first three coming with a modular graphical interface :

Expand All @@ -22,41 +28,36 @@ Right now, four modules are implemented, with the first three coming with a modu
Installation
============

Since version 0.2.8, Visbrain use PyQt5 and PyQt4 versions are no longer developed. Here, we only describe the installation of the PyQt5 version of Visbrain, but you can check the `documentation <http://etiennecmb.github.io/visbrain/>`_ for the installation of the older PyQt4 version.

Dependencies
------------

Visbrain requires :

* Numpy
* Scipy
* Vispy (*development version*)
* Matplotlib <= 1.5.1
* PyQt4
* NumPy
* SciPy
* VisPy (*development version*)
* Matplotlib >= 1.5.5
* PyQt5
* Pillow

User installation
-----------------

In a terminal, create and activate a 3.5 Python environment with the correct PyQt4 version :

.. code-block:: shell
conda create --yes -n visbrain python=3.5 numpy scipy pillow matplotlib=1.5.1 pip
activate visbrain
Install the latest VisPy version from Github :

.. code-block:: shell
pip install -e git+https://github.com/vispy/vispy#egg=vispy-dev
Finally, install Visbrain :
Then, install Visbrain :

.. code-block:: shell
pip install visbain
We also recommand to install pyopengl :
We also strongly recommend to install *pyopengl* :

.. code-block:: shell
Expand All @@ -73,7 +74,7 @@ The `Brain <http://etiennecmb.github.io/visbrain/brain.html>`_ module is primari
* Integrate EEG/MEG/Intracranial sources/electrodes and connectivity.
* Display Regions of Interest (ROI) based either on Brodmann or AAL atlases.
* Project source's activity onto the brain/ROI surface.
* An extended control of colours.
* An extended control of colors.
* Export in HD pictures with auto-cropping functionalities.
* GUI or command line control.
* `Examples and datasets <https://github.com/EtienneCmb/visbrain/tree/master/examples/brain>`_.
Expand Down
4 changes: 2 additions & 2 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@
# built documents.
#
# The short X.Y version.
version = '0.2.7'
version = '0.2.8'
# The full version, including alpha/beta/rc tags.
release = '0.2.7'
release = '0.2.8'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down
2 changes: 1 addition & 1 deletion docs/figure.rst
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Example
f = Figure(files, titles=titles, figtitle='My figure', xlabels=xlabels,
ylabels=ylabels, grid=(2, 2), ax_bgcolor=ax_bgcolor, y=1.,
fig_bgcolor=(0.098, 0.098, 0.098), figsize=(12, 12),
text_color='white', auto_crop=True)
text_color='white', autocrop=True)
# Add a colorbar only to the second axis :
f.colorbar_to_axis(1, (0, 1), 'viridis', title='Repartition', ticks='complete',
Expand Down
Binary file added docs/ico/sleep.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/ico/visbrain.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/ico/visbrain_128x128.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
73 changes: 48 additions & 25 deletions docs/index.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
.. image:: https://travis-ci.org/EtienneCmb/visbrain.svg?branch=master
:target: https://travis-ci.org/EtienneCmb/visbrain

.. image:: https://codecov.io/gh/EtienneCmb/visbrain/branch/master/graph/badge.svg
:target: https://codecov.io/gh/EtienneCmb/visbrain

.. image:: https://badge.fury.io/py/visbrain.svg
:target: https://badge.fury.io/py/visbrain


Visbrain documentation
######################
Expand All @@ -15,15 +21,42 @@ Visbrain is a python package in development and it's dedicated to neuroscience v
Installation
************

Here's the list of visbrain's dependancies :
Dependencies
============

Here's the list of visbrain's dependencies :

* Numpy
* Scipy
* Vispy : fast graphics rendering
* Matplotlib : mainly for colors and colormaps integration
* PyQt4 : Graphical User Interface components
* PyQt5 : Graphical User Interface components
* Pillow : for screenshots and image file format support.

We also strongly recommend to install *pyopengl* :

.. code-block:: shell
pip install pyopengl
PyQt5 version
=============

For the PyQt5 version, Matplotlib's version should be >= 1.5.5. If PyQt is not installed, run either **pip install pyqt5** or **conda install pyqt**. Then, in a terminal run :

.. code-block:: shell
pip install -e git+https://github.com/vispy/vispy#egg=vispy-dev
Finally, install Visbrain :

.. code-block:: shell
pip install visbain
PyQt4 version
=============

New Python versions (>= 3.6) and Matplotlib comes by default with PyQt5 and this a limitation because Visbrain use the GUI backends PyQt4. We are working to port Visbrain to PyQt5 but right now, you'll have to use a Python version under 3.6 and define an isolated environnement (ex : python=3.5). In addition, Visbrain use new VisPy functionalities and the most up-to-date VisPy version on PyPi is obsolete so you will have to install VisPy from Github.

First, in a terminal, create and activate a 3.5 Python environnement with the correct PyQt4 version :
Expand All @@ -43,16 +76,22 @@ Finally, install Visbrain :

.. code-block:: shell
pip install visbain
pip install visbain==0.2.7
We also recommand to install pyopengl :
What's new?
***********

.. code-block:: shell
* New in version v0.2.8

pip install pyopengl
* Visbrain

What's new?
***********
* Migration to PyQt5
* Start new module *Colorbar* for a better integration of color controls and properties.

* Sleep

* Enable exporting colored hypnogram
* Bug fixing & GUI iprovements

* New in version v0.2.3

Expand All @@ -62,21 +101,6 @@ What's new?
* Detection improvements
* Add link to script and datasets to the doc

* New in version v0.2.2

* Brain

* Bug fixing

* Sleep

* Bug fixing
* Save and load GUI configuration
* Control the sleep stage order using the href input parameter
* Enable/disable the drag and drop on load
* Better Black and white hypnogram exportation
* New shortcuts


Future plans
************
Expand All @@ -85,8 +109,7 @@ Future plans

* Visbrain

* PyQt5 migration
* pip and conda installation
* conda installation

* Brain

Expand Down
4 changes: 4 additions & 0 deletions docs/sleep.rst
Original file line number Diff line number Diff line change
Expand Up @@ -489,7 +489,11 @@ s Display / hide spectrogram
t Display / hide topoplot
h Display / hide hypnogram
p Display / hide navigation bar
x Display / hide time axis
g Display / hide grid
z Enable / disable zoom
i Enable / disable indicators
CTRL + Num Display / hide the channel Num [0, 9]
CTRL + d Display quick settings panel
CTRL + s Save hypnogram
CTRL + n Screenshot window
Expand Down
4 changes: 4 additions & 0 deletions dvp/README
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,7 @@
The GUI has been developped using qt-designer. The software generate a
*.ui file. This file is then transformed in a *.py using :
pyuic4 path_to_visbrain/visbrain/vbrain/interface/gui/visbrain_gui.ui -o path_to_visbrain/visbrain/vbrain/interface/gui/visbrain_gui.py

# PyQt5 :
Version linux a besoin d'être mise à jour :
pip install pyqt5==5.7.1 sip==4.19
9 changes: 8 additions & 1 deletion dvp/vbrain.todo → dvp/brain.todo
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
Nouvelles fonctions
-5 Visu de signaux
-5 Visu de maps
-5 Compatibilité avec atlas + ROI (voir MNE pour le chargement)

Big problem
-5 Améliorer la gestion de la mémoire + traquer les duplication de données.
-5 Prendre la classe colorbar de ndviz et adapter avec. Ce sera nettement plus claire.
Expand All @@ -24,6 +29,8 @@ doc

Colorbar
-5 Exportation de la colorbar ne marche pas bien (si GUI reste fermée). Il faudrait faire une petite opération sur le canvas pour le mettre à jour avant le screenshot
-5 Screenshot via commandline bug (choisir entre connectivité / projection)
-5 Colorbar screenshot
-3 Ajouter un paramètre label pour chaque objet.
+4 Ajouter dans color.py une fonction mpl_colormap(name, invert=False, mymap=None) qui retourne la liste de colorbar et qui teste si mymap est bien dans la liste.
+5 La couleur du texte de la colorbar devrait pouvoir être fixé ou auto (en fonction de la couleur de fond)
Expand All @@ -37,8 +44,8 @@ Sources
+5 Ré-arranger le SourceBase càd découper en fonction, en incluant le checking d'args. Ensuite

Projection
-5 Smooth projection
-1 Projection temporelle, en tenant compte de la fréquence d'échantillonage
+5 Smooth projection
+2 Ajouter un paramètre de smoothing exponentiel + filtre gaussien sur le final
+5 Vérifier les dernières modifs liées à la projection corticale / répartition
+4 Projection interne à peaufiner
Expand Down
2 changes: 2 additions & 0 deletions dvp/sleep.todo
Original file line number Diff line number Diff line change
Expand Up @@ -25,12 +25,14 @@ Bug
Etienne
-5 Voir si je pourrai pas implémenter ma propre class GridLines qui serait peut-être plus facile à paramétrer + transformation non-linéaires
-5 Clean des fillLocationTable pour peaks
-5 Exportation hypno devrait prendre en compte l'ordre des stades définit en entrée
-5 Faire une unique fonction d'exportation de table : ça évitera tout les problèmes.
-4 Zero reference (Tarek?)
-4 Améliorer gestion et méthode topoplot
-4 Hypnogramme: on pourrait faire une checkbox "Edit mode" qui lorsqu'elle est cochée permet d'activer les fonctions de modifications de l'hypno. Lorsque l'utilisateur la coche, il doit selectionner un nom de fichier d'hypnogramme, puis à chaque modification ça enregistre automatiquement dans le fichier .hyp ou .txt
-3 Checking window par défaut : si les donnés sont trop courtes, cela pourrait engendrer un bug.
-2 Découper les objets visuals
+5 Méthode de checking si les détections lancées ou pas (pour éviter le bug d'exportation si | détections)
+5 Ajouter une reversed checkbox sur le spectrogramme pour inverser Spectral et refaire la figure de filtrage du papier.
+5 Permettre de changer l'ordre des états de sommeil
+5 Permettre à l'utilisateur d'enregistrer ses propres settings et de les charger
Expand Down
21 changes: 18 additions & 3 deletions dvp/visbrain.todo
Original file line number Diff line number Diff line change
@@ -1,4 +1,19 @@
Big problem
Todo
-5 Remplir le io puis remplacer tout ce qui est chargement/sauvegarde dans les autres modules
-5 Classe colorbar (Alternative, copier colorbar.py)
-4 Réorganiser le dossier picture/*module*
-4 Icone pour tout les modules + les mettre dans gui/
-3 GUI screenshot HD avec picker de canvas
-3 What's new pour tout les modules


En cours
-5 Compatibilité PyQt5
-5 Améliorer procédure d'installation
-5 Augmenter partage de utils/
-5 Améliorer procédure d'installation

Modules
-3 Connect (voir conn avec Raph)
-3 Topo
-3 Signal
-3 Image
-3 ERP
3 changes: 2 additions & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
numpy
scipy
matplotlib<=1.5.1
matplotlib>=1.5.5
pyqt5
pillow
4 changes: 2 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
from pip.req import parse_requirements
from optparse import Option

__version__ = "0.2.7"
__version__ = "0.2.8"
NAME = 'visbrain'
AUTHOR = "Visbrain developpers"
MAINTAINER = "Etienne Combrisson"
Expand Down Expand Up @@ -48,7 +48,7 @@ def read(fname):
try:
from vispy.scene.visuals import ColorBar
except:
raise ValueError("You should install the right vispy version. In a "
raise ValueError("You should install the developer version of vispy. In a "
"terminal, run : pip install -e git+https://github.com"
"/vispy/vispy#egg=vispy-dev")

Expand Down
2 changes: 1 addition & 1 deletion test/test_imports.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ def test_import_scipy():

def test_import_pyqt():
"""Import PyQt"""
import PyQt4
import PyQt5

def test_import_Brain():
"""Import the Brain module."""
Expand Down
Loading

0 comments on commit 3dfd406

Please sign in to comment.