-
-
Notifications
You must be signed in to change notification settings - Fork 18.5k
Feature: implement Bokeh dataframe plotability #6962
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
Comments
Sounds like it would be a big win to take advantage of Bokeh. For the |
yeah, wow, sorry..
isig float64
glucose int64
dtype: object and the usual df.isig.plot() works now but opens a matplotlib plot still. Interestingly, a plot of one column against the other still fails with Key- and Index out of bounds erros, I thought the syntax |
@michaelaye If I understand correctly, what you show above is just a pandas plotting call (with matplotlib underneath as it is implemented now), so if there fails something, that has just something to do with pandas. I don't understand what this should have to do with bokeh? But of course, the feature request to have bokeh integration is a legitimate request. But another discussion? Or do I miss something? And |
First, I hope the title of the issue makes it clear that this is about bokeh integration. For me the first step was in trying it naively out with the bokeh session management redirecting |
@michaelaye yep, understood, I just wanted it to make clear it the errors had nothing to do with the issue you wanted to raise (for the But, on the bokeh integration, I think the interesting route for now, is the matplotlib compatibility of bokeh (in that they try to render a matplotlib figure with bokeh). I think they are still working on this, but maybe you can try that out? (it is the function I think for pandas itself this is a more interesting path, than fully implementing an alternative |
Hey guys, right now our MPL compat comes from @jakevdp I do think that native Bokeh integration is worth considering, you could have more interesting features liked linked panning and linked selections much easier. But we are happy to help out integrating Bokeh more closely any way we can, whatever route you pursue. |
Good to hear. The most interesting feature of Bokeh for me is having a higher performance for a lot of points and the ability to create a self-containing html with plots that stay interactive. (I know about MPL3D, but as Jake himself writes, that's not very performant when it comes to millions of points.) |
Bokeh is not going to be naively performant with millions of points, either, unless you are including the Abstract Rendering and downsampling work that is being integrated. But even with, say, a 1000x1000 canvas you have a million pixels... you are never going to want to actually plot millions of points without some kind of downsamping or pre-rasterization aggregation, but those are things that Bokeh could help with as well. |
I didn't mean the physical display of million items, but from what I tried, Bokeh's zoom interactivity stays amazingly performant even so I'm sending it millions of items. I managed 12 million data points staying zoomable with acceptable performance. Whatever Bokeh does with it automatically worked very fine so far for me. |
Closing in favor of #14130 |
Bokeh specializes on large data, and is using pandas in some of their examples (e.g. here).
As pandas is built to work with large data-sets as well, I believe they would make an excellent couple!
However, I have tried to use the built-in dataframe plotting in the glucose notebook but without success, receiving either TypeErrors or KeyErrors, depending on how I initiate the plot:
I am guessing that we need to teach the DataFrame to check if the Bokeh framework is active and then point the plotter to the slightly different syntax for Bokeh plotting, which we would need to implement of course. Can somebody shed a light on what is going wrong in general in above examples?
Considering the possibility of having active zoomable plots over usually massively too long time-series with lots of data points in them I am very intrigued by this feature and would love to see it implemented. If further discussion in this issue can guide me on how to do the recognition part of the active plotting framework (or if somebody would take that on would be great), I am volunteering in wrapping the different Bokeh plotting syntaxes, so that e.g. the standard df.colname.plot() will work as well with Bokeh underneath.
Sounds good?
The text was updated successfully, but these errors were encountered: