Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MRG + 1] ENH: try making HNN GUI with ipywidgets #76

Merged
merged 88 commits into from
Jul 11, 2022
Merged
Show file tree
Hide file tree
Changes from 87 commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
809f563
ENH: try making HNN GUI with ipywidgets
jasmainak Sep 14, 2019
2305c41
A bit of cleanup
jasmainak Sep 14, 2019
dd6796b
Update for new API
jasmainak Apr 13, 2021
771fc72
Add accordions and tabs
jasmainak Apr 14, 2021
51a0f03
Add drives interactively
jasmainak Apr 15, 2021
021951e
Less jitter
jasmainak Apr 15, 2021
a5d6b5b
WIP: adding drives to net
jasmainak Apr 15, 2021
a54679a
ENH: add drives before simulation
jasmainak Apr 15, 2021
dcc99cf
Move code away from jupyter
jasmainak Apr 16, 2021
562a2bb
Pep8
jasmainak Apr 16, 2021
99ae33d
MAINT: Flat is better than nested
jasmainak Apr 16, 2021
e4bf713
ENH: spectogram option but doesn't quite work
jasmainak Apr 16, 2021
8d89182
Add empty option in adding drives
jasmainak Apr 16, 2021
9e7c1f2
DOC: improve layout
jasmainak Apr 16, 2021
f59dd8f
ENH: add different cell types to Poisson drive
jasmainak Apr 16, 2021
9aad320
MAINT: refactor for readability
jasmainak Apr 16, 2021
7b6a5f2
STY: better styling and color
jasmainak Apr 17, 2021
1caa9a6
STY: Labels for groups of widgets
jasmainak Apr 17, 2021
83cd5b5
MAINT: gamma example sort of works
jasmainak Apr 17, 2021
d683fa5
ENH: file upload widget to load a network
jasmainak Apr 17, 2021
8265be7
ENH: improve slider with log scale
jasmainak Apr 17, 2021
6d6aca2
ENH: update sliders with new network + create new network
jasmainak Apr 17, 2021
8eeb569
ENH: improve flow and readability by avoiding nested function
jasmainak Apr 17, 2021
50a0f61
MAINT: reorganize for better readability
jasmainak Apr 18, 2021
b2d47aa
DOC: PSD plot
jasmainak Apr 19, 2021
1dde350
FIX: evoked widget works
jasmainak Apr 19, 2021
b45ac15
ENH: Try mybinder demo
jasmainak Apr 19, 2021
e8aa84f
ENH: cell-specific widgets in all drives
jasmainak Apr 19, 2021
ef42619
ENH: more complete rhythmic drive
jasmainak Apr 19, 2021
06beb81
ENH: Add tab for simulation parameters
jasmainak Apr 21, 2021
cf40a57
ENH: Bound tstop of drive by simulation tstop
jasmainak Apr 21, 2021
ae74d7e
MAINT: use kwargs to save some lines
jasmainak Apr 21, 2021
9e2f1fe
MAINT: on_button_clicked -> run_button_clicked
jasmainak Apr 21, 2021
0309f14
ENH: local connectivity sliders should now update correctly
jasmainak Apr 21, 2021
217823d
FIX morlet cycles depend on freq
jasmainak Apr 22, 2021
96cb2d5
FIX tweaks to rhythmic drive
jasmainak Apr 22, 2021
dd6817e
ENH: add plot network
jasmainak Apr 23, 2021
e663347
MAINT: simplify by removing drive_titles variable
jasmainak Apr 25, 2021
f000998
ENH: read also .param files
jasmainak Apr 25, 2021
3639e91
DOC: update readme
jasmainak Apr 25, 2021
95a7733
FIX: update connectivity for real?
jasmainak Apr 25, 2021
d456b84
ENH: Run button works twice for real
jasmainak Apr 27, 2021
7c0cba0
ENH: delete drives button
jasmainak Apr 27, 2021
322e8c1
Resize a bit
jasmainak Apr 27, 2021
be75d81
Add screenshot to readme
jasmainak Apr 27, 2021
bfbe342
Fix bug & add some functions
chenghuzi Jun 23, 2022
33ccb95
Added MPI, stop button and panel_1 for comparison.
chenghuzi Jun 29, 2022
a55e256
Updated author info & removed unused imports
chenghuzi Jun 29, 2022
6ea366e
Fixed formatting issues
chenghuzi Jun 29, 2022
6c20418
1. fixed bugs in simulation
chenghuzi Jun 30, 2022
0d5ddef
Added configurable visualization output
chenghuzi Jul 1, 2022
4015eb7
Removed debug model
chenghuzi Jul 1, 2022
76eff42
Fixed some bugs
chenghuzi Jul 2, 2022
9cf8d21
Fixed W503
chenghuzi Jul 2, 2022
d075a7d
Remove bursty
chenghuzi Jul 2, 2022
ce3dfdb
Renamed accordian
chenghuzi Jul 2, 2022
296d23c
Fixed mutable default parameters
chenghuzi Jul 4, 2022
eac866f
Re-formatted
chenghuzi Jul 4, 2022
673569c
Removed mutable default arguments
chenghuzi Jul 5, 2022
fec6ff9
Replaced Network with jones_2009_model
chenghuzi Jul 5, 2022
d0088fa
Added all possible connections
chenghuzi Jul 5, 2022
cac88df
Fixed func names
chenghuzi Jul 5, 2022
012567a
Fixed various formatting issues
chenghuzi Jul 5, 2022
c3a910c
Changed render option assignment
chenghuzi Jul 5, 2022
a38520a
Updated Joblib backend config
chenghuzi Jul 5, 2022
6a21748
Fix formatting issues
chenghuzi Jul 5, 2022
69c52de
ENH: allow launching GUI with command hnn-gui
jasmainak Jul 5, 2022
f5d9545
Fix flake8 E302
chenghuzi Jul 6, 2022
ad64aba
Preserved previous plots
chenghuzi Jul 6, 2022
bf2831b
Added test, removed deprecated settings & add debug logging
chenghuzi Jul 7, 2022
316cafc
Updated optional dependencies
chenghuzi Jul 7, 2022
738c9e6
Fix import order
chenghuzi Jul 7, 2022
1610197
Update unit test settings
chenghuzi Jul 7, 2022
d4a81cd
Allow passing voila arguments
chenghuzi Jul 7, 2022
49098b2
Re-organized code
chenghuzi Jul 7, 2022
a8968d5
Add drive location, status button & change header
chenghuzi Jul 9, 2022
0ade937
Add all drives
chenghuzi Jul 9, 2022
79eb35d
Remove try except
chenghuzi Jul 9, 2022
2cd74a2
Fix formatting issues
chenghuzi Jul 9, 2022
094a8ba
Update gui screenshot
chenghuzi Jul 9, 2022
2f57f60
MAINT: undo auto black code formatting
jasmainak Jul 9, 2022
01e47aa
MAINT: no env variables
jasmainak Jul 9, 2022
d49bd0d
Cleanup
jasmainak Jul 9, 2022
b41405d
DOC: Readme
jasmainak Jul 9, 2022
3d9082d
Fix error
chenghuzi Jul 10, 2022
fde873c
Fix formatting error
chenghuzi Jul 10, 2022
e857f24
MAINT: add connecting to callbacks at the end
jasmainak Jul 10, 2022
471058f
Fix layout
chenghuzi Jul 11, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/unit_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ jobs:
pip install flake8 pytest pytest-cov
pip install mne psutil joblib
pip install NEURON
pip install ipywidgets voila
if [ "${{ matrix.os }}" == "ubuntu-latest" ]; then
pip install mpi4py
else
Expand All @@ -56,4 +57,4 @@ jobs:
- name: Upload code coverage
shell: bash -el {0}
run: |
bash <(curl -s https://codecov.io/bash) -f ./coverage.xml
bash <(curl -s https://codecov.io/bash) -f ./coverage.xml
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ recursive-include hnn_core/mod/x86_64 *
recursive-include hnn_core/mod/x86_64/.libs *

recursive-include hnn_core *.py
recursive-include hnn_core *.ipynb
jasmainak marked this conversation as resolved.
Show resolved Hide resolved

### Exclude

Expand Down
25 changes: 24 additions & 1 deletion README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,11 @@ hnn-core
:target: https://codecov.io/gh/jonescompneurolab/hnn-core
:alt: Test coverage

This is a leaner and cleaner version of the code based off the `HNN repository <https://github.com/jonescompneurolab/hnn>`_. However, a Graphical User Interface is not supported at the moment in this repository.
.. image:: https://user-images.githubusercontent.com/11160442/178095018-35d2619a-6a82-4e27-91c9-ff2796fab435.png
:target: https://user-images.githubusercontent.com/11160442/178095018-35d2619a-6a82-4e27-91c9-ff2796fab435.png
:alt: HNN-core GUI

This is a leaner and cleaner version of the code based off the `HNN repository <https://github.com/jonescompneurolab/hnn>`_.

It is early Work in Progress. Contributors are very welcome.

Expand All @@ -28,6 +32,15 @@ Dependencies
Optional dependencies
---------------------

GUI
~~~

* ipywidgets
* voila

Parallel processing
~~~~~~~~~~~~~~~~~~~

* joblib (for simulating trials simultaneously)
* mpi4py (for simulating the cells in parallel for a single trial). Also depends on:

Expand Down Expand Up @@ -58,6 +71,16 @@ To check if everything worked fine, you can do::

and it should not give any error messages.

**GUI installation**

To install the GUI dependencies along with ``hnn-core``, a simple tweak to the above command is needed::

$ pip install hnn_core[gui]
rythorpe marked this conversation as resolved.
Show resolved Hide resolved

To start the GUI, please do::

$ hnn-gui

**Parallel backends**

For further instructions on installation and usage of parallel backends for using more
Expand Down
3 changes: 3 additions & 0 deletions binder/postBuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
set -e

python setup.py build_mod
5 changes: 5 additions & 0 deletions binder/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
NEURON
voila
ipywidgets
matplotlib
scipy
Empty file added hnn_core/gui/__init__.py
Empty file.
Loading