matplotlib / ipympl

Matplotlib Jupyter Integration
https://matplotlib.org/ipympl/
BSD 3-Clause "New" or "Revised" License
1.57k stars 227 forks source link

key error in jupyter notebook using brainrender #457

Open Thimotek opened 2 years ago

Thimotek commented 2 years ago

Hello,

I am very new to these things thus sorry if I am not giving you enough informations about the issue !

to resume

I am trying to plot the coordinate of a group of cells in a 3D brain by using brainrender with jupyter notebook

I am using an anaconda environnement with the version 3.7.0 of python and the version of my anaconda navigator is 1.9.6.

my scirpt is working until this entry :

#Get a numpy array coordinates of some labelled cells
scene = Scene(title='area_cell') 
MOx = scene.add_brain_region("MO", alpha=0.15)
SSx = scene.add_brain_region("SS", alpha=0.15)
VISx = scene.add_brain_region("VIS", alpha=0.15)
#STRx = scene.add_brain_region("STR", alpha=0.15)
KeyError                                  Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_16228\2284008602.py in <module>
      1 #Get a numpy array coordinates of some labelled cells
----> 2 scene = Scene(title='area_cell')
      3 MOx = scene.add_brain_region("MO", alpha=0.15)
      4 SSx = scene.add_brain_region("SS", alpha=0.15)
      5 VISx = scene.add_brain_region("VIS", alpha=0.15)

~\Anaconda2\envs\plot3Dbrain\lib\site-packages\brainrender\scene.py in __init__(self, root, atlas_name, inset, title, screenshots_folder, plotter, title_color)
     48             f"Creating scene with parameters: root: {root}, atlas_name: '{atlas_name}'', inset: {inset}, screenshots_folder: {screenshots_folder}"
     49         )
---> 50         JupyterMixIn.__init__(self)
     51 
     52         self.actors = []  # stores all actors in the scene

~\Anaconda2\envs\plot3Dbrain\lib\site-packages\brainrender\_jupyter.py in __init__(self)
     10     def __init__(self):  # pragma: no cover
     11         # keep track if we are in a jupyter notebook
---> 12         if vedo.settings.notebookBackend == "k3d":
     13             self.backend = "k3d"
     14         elif vedo.settings.notebookBackend == "itkwidgets":

~\Anaconda2\envs\plot3Dbrain\lib\site-packages\vedo\utils.py in __getattr__(self, k)
    236 
    237     def __getattr__(self, k):
--> 238         return self[k]
    239 
    240     def __setattr__(self, k, v):

KeyError: 'notebookBackend'

I tried unsuccessfully to understand what was going wrong and to find someonne with the same issue, thus if you have idea it would be great !

also let me know if you need more informations,

Thanks !

martinRenou commented 2 years ago

Thanks for opening an issue, looking at your error traceback it does not seem to be an error with ipympl itself, you may have more luck opening your issue on https://github.com/brainglobe/brainrender or https://github.com/marcomusy/vedo

Thimotek commented 2 years ago

Ok if you think thisis better i will try there then, thank you !