higlass / higlass/higlass-python
Opening display from a script
- Dominant language
- Python
- Stars
- 66
- Forks
- 11
- PR merge metrics
- No merged PRs in 30d
Description
I've got higlass working from within a Jupyter notebook, but the same code gives an error when I run it from a script. Is there something different that needs to be done for non-jupyter notebook usage?
Here is the error:
```
Process Process-1:
Traceback (most recent call last):
File "/Users/wnoble/opt/anaconda3/envs/ppx/lib/python3.9/site-packages/multiprocess/process.py", line 315, in _bootstrap
self.run()
File "/Users/wnoble/opt/anaconda3/envs/ppx/lib/python3.9/site-packages/multiprocess/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/Users/wnoble/opt/anaconda3/envs/ppx/lib/python3.9/site-packages/flask/app.py", line 1188, in run
run_simple(t.cast(str, host), port, self, **options)
File "/Users/wnoble/opt/anaconda3/envs/ppx/lib/python3.9/site-packages/werkzeug/serving.py", line 1069, in run_simple
fd = int(os.environ["WERKZEUG_SERVER_FD"])
File "/Users/wnoble/opt/anaconda3/envs/ppx/lib/python3.9/os.py", line 679, in __getitem__
raise KeyError(key) from None
KeyError: 'WERKZEUG_SERVER_FD'
```
And here is the code:
```
my_array = sparse_matrix.toarray().astype(float)
ts = Tileset(
tileset_info=lambda: npmatrix.tileset_info(my_array),
tiles=lambda tids: npmatrix.tiles_wrapper(my_array, tids)
)
display, server, viewconf = higlass.display([
View([
Track(track_type='top-axis', position='top'),
Track(track_type='left-axis', position='left'),
Track(track_type='heatmap',
position='center',
tileset=ts,
height=500),
])
], fuse=False)
display
```
I am running this on MacOS 12.5.1.
Contributor guide
Research direction
Start by reproducing the failure from a non-Jupyter script using higlass.display(..., fuse=False), then compare its startup path with the working notebook usage. Investigate the Flask server error involving WERKZEUG_SERVER_FD; done means the script opens the display without raising the reported KeyError.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- flask, jupyter-notebook, python
- Domain
- api, backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100