-
-
Notifications
You must be signed in to change notification settings - Fork 403
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Log axis when plotting holoviews object through datashader #2195
Comments
Thanks for reporting this! I suspect datashader might be lacking an option to apply a log transform before rasterizing - I am assuming that the example you post is a simplified example, as I don't see why you would use datashader for a small number of simple curves like that... |
@jlstevens, yes, this example is just a simple modification of an example in the user guide. For actual application, I would like to plot many simultaneous high resolution FFT transforms of audio signals. Currently using bokeh, but it's very slow plotting so I'm looking for an alternative. So far, holoviews+datashader+bokeh is amazingly fast with time domain signals (not needing log axis). |
Datashader does have an option for doing the log transformation before rasterizing; it's |
Looks like it isn't broken in datashader itself:
However, I don't see anywhere in HoloViews that the value of logx or logy is passed down to datashader, so it looks like this was an oversight in the HoloViews code for datashading. |
I've discussed this issue with @philippjfr and @jlstevens, and unfortunately it will take some work to fix it. There are a couple of underlying issues:
To-do items:
In any case we have to do something, even if it's just to raise an error in the above case, because generating an incorrect plot is not ever ok. |
I think this is the same issue so I will post it here, but Try
|
@jetilton datashade turns the Curve elements into RGB elements, try this:
|
@philippjfr That does it, just getting going in holoviews thanks for the quick feedback |
Just got bitten by this. Maybe in the interim it would make sense to throw a warning until a proper fix can be implemented? Right now, it fails silently and could mislead users into thinking they're looking at the log scaled plot when they actually aren't. |
Yes, I agree. I don't quite know how to detect this case cleanly, but if it's obvious to anyone else, I'd be very happy to see a PR appear that warns or even raises an exception (given how unlikely it is that someone would find the current behavior useful or appropriate). |
With the following code I'm trying to maintain the log scale of the x-axis which seems to work when using the pure holoview plot (top plot), but not when plotting the
holoview.NdOverlay
object through the datashader (bottom plot).The text was updated successfully, but these errors were encountered: