Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 08:53
    philippjfr synchronize #525
  • 08:53

    philippjfr on bk_2.4

    Set strict channel priority (compare)

  • 08:50
    philippjfr synchronize #525
  • 08:50

    philippjfr on bk_2.4

    Require geopandas-base (compare)

  • 08:45
    philippjfr synchronize #525
  • 08:45

    philippjfr on bk_2.4

    Drop py3.6 (compare)

  • 08:34
    philippjfr synchronize #525
  • 08:34

    philippjfr on bk_2.4

    Add fiona for example tests (compare)

  • 08:27
    molindoudou commented #5089
  • 08:25
    molindoudou commented #5089
  • 08:25
    philippjfr commented #2789
  • 08:25
    philippjfr milestoned #2789
  • 08:25
    philippjfr labeled #2789
  • 08:22
    philippjfr commented #5089
  • 08:21
    molindoudou commented #5089
  • 08:20
    molindoudou commented #5089
  • 08:11
    philippjfr commented #5089
  • 08:08
    molindoudou commented #5089
  • 08:08
    molindoudou commented #5089
  • 08:07
    philippjfr commented #5089
James A. Bednar
@jbednar
I don't know much about it, but I replied!
Michael Aye
@michaelaye
image.png
Would somebody know why setting my colormap for Image objects doesn't work like this?
Ah, i will put it to discourse
Apparently nobody knows a work-around.. :( It's quite annoying to have to type cmap='viridis' everywhere...
James A. Bednar
@jbednar
"It’s unfortunate that hvPlot is not able to use HoloViews’s options defaults, but I don’t know of any current way around this. The HoloViews defaults should be respected already for anything that hvPlot is not trying to do itself already, but hvPlot has to handle colormaps internally to get behavior to match Matplotlib-based .plot() output, so it overrides the HoloViews defaults in those cases. It would be great to add code to hvPlot to detect when the HoloViews default has been changed and use that rather than its own handling, but I don’t know how difficult that would be, and I don’t think anyone is currently working on that. It’s definitely inconsistent from a user perspective, but from a HoloViews perspective, hvPlot is user code, and if the user (hvPlot in this case) says to use a certain colormap, HoloVIews will ignore the overall default as instructed, so the HoloViews default won’t have any effect when used with hvPlot (unless we can hack that in somewhere)."
Contributions welcome, but my guess is that it will be tricky to figure out that logic!
Michael Aye
@michaelaye
Ok, if hvplot is a "user" of holoviews, then it defo needs its own default setting mechanism and not use hv.opts.
otherwise everything is mixed up.
there's also still a lot of differences in xarray.hvplot with the MPL versions, I will see to make an overview post of the current status...
Thx for the detailed reply!
James A. Bednar
@jbednar
My vote is for hvPlot to check whether anything has been changed in hv defaults and use that instead, so that there is only a single defaults mechanism, particularly because hv defaults will always be used for anything that hvPlot is not itself setting. But I have not tried to implement that and I don't know how messy it would be.
My guess is, somewhat messy; annoying but not too horrible!
Michael Aye
@michaelaye
I guess there's the philosophical question if you want to force a hvPlot user to learn holoviews or not?
James A. Bednar
@jbednar
I think I remember @philippjfr imagining having a hvPlot-specific defaults system, organized by "line" and "points" rather than "hv.Curve" and "hv.Scatter" for convenience of hvPlot users, but my gut feeling is that would be a never-ending project to populate it with all the things that are already in the hv defaults. I'd vote for some sort of hvPlot-specific lookup table or setting function (allowing users to set defaults using "line" and not just hv's "Curve"), but for there fundamentally to be a single master set of defaults for a user to override. Anyway, I'd be happy to join a brainstorming session with you and Philipp if this was something you could imagine working on; together I think we could make a good plan. Once designed we do have some Pangeo funding that could help make it a reality, but it's not enough to cover all the work in the short term since that funding is at a low level over a long time period.
Michael Aye
@michaelaye
like a multi-key dict that point to the same thing in the hv opts. that could work.
Overall I'd really love for hvplot to shine even more, as i think it's genius and a nice intro-drug to the holoviews framework.. :)
James A. Bednar
@jbednar
Same! See my scheme for hvPlot world domination at holoviz/hvplot#533 .
Michael Aye
@michaelaye
oh, that looks like a good read, will digest.. :)
James A. Bednar
@jbednar
We are already implementing one part of that plan, which is for hvPlot to support Matplotlib and Plotly, and already made hvPlot the default approach at holoviz.org. Still lots of work to go!
Michael Aye
@michaelaye
btw, i got plagued again by hvplots not showing after an upgrade unless i'd do import holoviews as hv; hv.extension('bokeh'). That must clean old stuff out somehow...
maybe should add that to an hvplot FAQ somewhere...
James A. Bednar
@jbednar
Probably a shift-reload on the browser page would also do it.
Michael Aye
@michaelaye
i restarted the jupyter notebook, is it possible that that still would have the old resources after a restart?
James A. Bednar
@jbednar
Yes, the browser keeps JavaScript resources around. Shift-reload (or restarting the browser) gets rid of those, usually.
Michael Aye
@michaelaye
Ah, that's good to remember (I probably won't until next time.. ;) )
Marc Skov Madsen
@MarcSkovMadsen
At least for Panel Philipp got a PR in to version Bokeh extensions such that Panel (anf my extensions) shpuld no longer need a browser hard refresh after upgrading.
Michael Aye
@michaelaye
I just had another case where Shift-Reload didn't help. Had to do the hv.extension('bokeh') trick. Maybe browser-restart would have helped, but TABS! ;)
Apparently the required refresh is per notebook, if that makes sense??
James A. Bednar
@jbednar
Right; Shift-Reload on that particular tab.
stonebig
@stonebig
tiny question: is geoviews package in deprecation mode, superseded per something else ?
James A. Bednar
@jbednar
No; why?
I guess we'd recommend most people use hvPlot with geo=True or crs=..., but that just uses GeoViews under the hood, so...
stonebig
@stonebig
Question was because it's not compatible with latest bokeh, on pypi
James A. Bednar
@jbednar
Uh-oh! Please file a bug report! Thanks.
We scrambled last week to make hv and Panel compatible, but I wasn't aware of gv having any issues with Bokeh 2.4.
James A. Bednar
@jbednar
Update: Philipp is working on making a new gv release, but as far as we're aware, previous releases were properly pinned to the Bokeh version (necessary because gv includes custom Bokeh tools), so current gv releases should happily work with their corresponding Bokeh versions (2.3 and earlier). If that's not true, please file an issue; otherwise, we've focused on the actual breaking changes, not just updating to get new Bokeh features.
Hugues-Yanis Amanieu
@hyamanieu

"It’s unfortunate that hvPlot is not able to use HoloViews’s options defaults, but I don’t know of any current way around this. The HoloViews defaults should be respected already for anything that hvPlot is not trying to do itself already, but hvPlot has to handle colormaps internally to get behavior to match Matplotlib-based .plot() output, so it overrides the HoloViews defaults in those cases. It would be great to add code to hvPlot to detect when the HoloViews default has been changed and use that rather than its own handling, but I don’t know how difficult that would be, and I don’t think anyone is currently working on that. It’s definitely inconsistent from a user perspective, but from a HoloViews perspective, hvPlot is user code, and if the user (hvPlot in this case) says to use a certain colormap, HoloVIews will ignore the overall default as instructed, so the HoloViews default won’t have any effect when used with hvPlot (unless we can hack that in somewhere)."

Why does it have to do that? I don't think it should. .hvplotcan just be its own method and not a clone of .plot

And if you want Hvplot to reach world domination, it shouldn't be a clone of something :)
James A. Bednar
@jbednar
The design of hvPlot was very definitely to be a drop-in replacement for .plot(), to provide an easy path for the very large .plot() userbase. I don't think that's a choice that could be revisited at this late stage!
It's not meant to be a clone, but to have .plot as a starting point and go much further, so that people already able to use .plot don't have to go backwards before they can make forwards progress.
Hugues-Yanis Amanieu
@hyamanieu

I'm not sure how the default options is a problem. It's mostly esthetics, right? It won't lead to any crash or bugs upon updating if it goes away from replicating .plot.
Anyhow, I would vote for not trying to imitate .plot behavior anymore and let people define their defaults with hv.opts. Because what is said in above discourse topic is a bug to me, and it's due to trying to imitate another API.

I have always used matplotlib.pyplot rather than the .plot method of pandas then moved to bokeh then .hvplot, so my opinion may not be represent the majority (I have no statistics on this :) ). But I hadn't expected a new interactive library to feel the same as the old school one.

Bas Nijholt
@basnijholt
This message was deleted
Ryan Abernathey
@rabernat
Hi gurus! How do I set colorbar_opts in hvplot?
I want to shrink my huge colorbar but can't figure it out.
James A. Bednar
@jbednar
da.hvplot(...).opts(colorbar_opts={'width': 70})?
epifanio
@epifanio
hii, posted on bokeh discourse an issue I am facing with latest bokeh https://discourse.bokeh.org/t/bokeh-2-4-issue-rendering-ipywidgets/8441 wgich prevent me to use bokeh 2.4 - from what you know, which bokeh version is used by pyviz (holovies, geoviews, &co) when installing with conda?
James A. Bednar
@jbednar
Most of our libraries have been updated to work with Bokeh 2.4, but we still need to release compatible versions of GeoViews and jupyter_bokeh. If you install something including geoviews, you should normally get bokeh 2.3.3, which should be fully usable until a new gv version is available.