Closed CodyCBakerPhD closed 1 year ago
Thanks @CodyCBakerPhD, I will check it out.
Hey @CodyCBakerPhD,
I don't totally understand this issue.
The fiber photometry data uses the ndx-photometry extension, so it has neurodata_type = 'FiberTable'
, which obviously isn't one of the neurodata_types
supported by nwbwidgets.
I would expect there to be some way to extend the nwbwidgets so that they support some specific nwb extention, but I don't how to do that, and the description on the docs doesn't really provide enough info to integrate with the nwb2widget()
function.
The question is, why does the RoiResponseWidget require the FibersTable at all?
There are already some extension data types (like grayscale volume) included in the core widgets; you could always do a dynamic non-required update to the neurodata_viz_spec
with a couple lines that detect if ndx-photometry
is installed in the current environment
Or, setup a fallback to a basic TimeSeries visualization in this situation - there's lots of possibilities for improving it - but point being it's not a great look if we try to visualize these files with the widgets and they fail to render the main neural data in the file
Update:
I was able to get the o-phys data to visualize by "FibersTable" : "traces" to the dt_desc_map
dictionary in group_and_sort_controllers.py (I also had to omit yticks/yticklabels in timeseries.py
for some reason). But, passing a custom function via neurodata_vis_spec
doesn't seem to be doing anything.
Rather than quickly pushing a hacky fix to nwbwidgets, I'd like to take some serious time to understand how all this stuff is working and create nice custom visualizations for the Datta Lab dataset. But, I think fleshing out the conversion (optogenetic datainterface, dandiset, etc.) is much more important right now.
So, my pitch is to leave this issue for now, and swing back around to it when we're ready to really focus on visualizations.
Replaced by #293
What happened?
@pauladkisson recently made some nice NWB files of fibre photometry data using the ndx-photometry, but this causes a pretty severe issue with the default traces visualizer for that (which ought to be pretty simple otherwise)
Steps to Reproduce
No response
Traceback
Operating System
Linux
Python Version
3.10
Package Versions
The default ipykernel on the DANDI hub
Code of Conduct