这是nwbwidgets,使用ipywidgets在Jupyter Notebooks中查看NWB文件内容的工具。
项目描述
在Jupyter中探索NWB数据
目录
关于
一个用于在Jupyter笔记本(或lab)中可视化NWB数据的控件库。这些控件允许您浏览NWB文件的层次结构并可视化特定数据元素。它设计为与NWB 2.0文件无缝工作,并且易于扩展。
安装
nwbwidgets
需要 Python >= 3.7。
可以通过运行以下命令安装最新发布的版本
pip install nwbwidgets
请注意,某些小部件需要一些可选依赖项。如果NWB数据文件包含需要额外依赖项的数据类型,您将看到该特定小部件所需额外模块的列表。文件中的所有其他小部件仍然可以正常工作。
使用
使用 Panel
使用NWB小部件最简单的方法是使用交互式 Panel
from nwbwidgets.panel import Panel
Panel()
使用 nwb2widget
如果您在Jupyter笔记本中直接使用NWB文件对象,您也可以使用NWB Widgets进行探索
from pynwb import NWBHDF5IO
from nwbwidgets import nwb2widget
io = NWBHDF5IO('path/to/file.nwb', mode='r')
nwb = io.read()
nwb2widget(nwb)
使用Docker
您还可以使用Docker运行NWB Widgets Panel
$ docker run -p 8866:8866 ghcr.io/NeurodataWithoutBorders/nwbwidgets-panel:latest
演示
文档
请参阅我们的ReadTheDocs页面,获取完整文档,包括所有支持格式的画廊。
工作原理
所有可视化都由字典 neurodata_vis_spec
控制。该字典的键是pynwb神经数据类型,值是接受该神经数据类型作为输入并输出可视化的函数。可视化可以是类型 Widget
或 matplotlib.Figure
。当您将神经数据类型实例输入到 nwb2widget
时,它会搜索 neurodata_vis_spec
中的该实例的神经数据类型,并从神经数据类型的父类向后遍历,以找到 neurodata_vis_spec
中的最具体神经数据类型。其中一些类型是其他类型的容器,并为其实例创建手风琴UI元素,然后将其传递到 neurodata_vis_spec
并相应地渲染。
除了为 neurodata_vis_spec
字典的值提供函数之外,您还可以提供一个具有字符串键和函数值的 dict
或 OrderedDict
。在这种情况下,将渲染一个选项卡结构,其中每个键/值对作为一个单独的选项卡。所有手风琴和选项卡结构都是懒加载的 - 它们只有在选项卡被选中时才会调用。因此,您可以为单个数据类型提供多个选项卡而不用担心。只有在它们被选中时它们才会运行。
扩展
要扩展NWBWidgets,您需要一个接受特定神经数据类型类实例作为输入并输出matplotlib图或jupyter小部件的函数。
使用于
项目详情
下载文件
下载适合您平台的应用程序。如果您不确定选择哪个,请了解有关安装包的更多信息。