Hello,
In my opinion, all dependencies are very common and/or lightweight, except datashader which requires dask/xarray/pillow among others. Since it is used in only one plot function, should we moved this inside an extra dependency? If someone runs scatter_density without datashader installed, we could log an error explaining how to install the extra.
Alternatively, instead of throwing an error, we could also plot a subset of cells if datashader is not installed and add a warning like "Cells are subset. To show all cells, install datashader with 'pip install pytometry[performance]'"
But maybe you plan to implement other plot functions with datashader? In that case, I agree that it would be really preferable to keep it in the main dependencies. What do you think @mbuttner, @grst?
Also, what about moving nbproject in the dev dependencies? Is there a reason to have this in the main dependencies?
Hello,
In my opinion, all dependencies are very common and/or lightweight, except
datashaderwhich requiresdask/xarray/pillowamong others. Since it is used in only one plot function, should we moved this inside an extra dependency? If someone runsscatter_densitywithoutdatashaderinstalled, we could log an error explaining how to install the extra.Alternatively, instead of throwing an error, we could also plot a subset of cells if
datashaderis not installed and add a warning like"Cells are subset. To show all cells, install datashader with 'pip install pytometry[performance]'"But maybe you plan to implement other plot functions with datashader? In that case, I agree that it would be really preferable to keep it in the main dependencies. What do you think @mbuttner, @grst?
Also, what about moving
nbprojectin the dev dependencies? Is there a reason to have this in the main dependencies?