Skip to content

Releases: holoviz/holoviews

Version 1.13.1

25 Mar 11:49
Compare
Choose a tag to compare

This is a minor patch release to fix issues compatibility with the about to be released Bokeh 2.0.1 release. Additionally this release makes Pandas a hard dependency, which was already implicitly the case in 1.13.0 but not declared. Lastly this release contains a small number of enhancements and bug fixes.

Enhancements:

  • Add option to set Plotly plots to responsive (#4319)
  • Unified datetime formatting in bokeh hover info (#4318)
  • Allow using dim expressions as accessors (#4311)
  • Add explicit .df and .xr namespaces to dim expressions to allow using dataframe and xarray APIs (#4320)
  • Allow defining clim which defines only upper or lower bound and not both (#4314)
  • Improved exceptions when selected plotting extension is not loaded (#4325)

Bug fixes:

  • Fix regression in Overlay.relabel that occurred in 1.12.3 resulting in relabeling of contained elements by default (#4246)
  • Fix bug when updating bokeh Arrow elements (#4313)
  • Fix bug where Layout/Overlay constructors would drop items (#4313)

Compatibility:

  • Fix compatibility with Bokeh 2.0.1 (#4308)

Documentation:

  • Update API reference manual (#4316)

Version 1.13.0

21 Mar 21:19
c5b24a0
Compare
Choose a tag to compare

This release is packed full of features and includes a general refactoring of how HoloViews renders widgets now built on top of the Panel library. Many thanks to the many contributors to this release either directly by submitting PRs or by reporting issues and making suggestions. Specifically we would like to thank @poplarShift, @jonmease, @flothesof, @julioasotodv, @ltalirz, @DancingQuanta, @ahuang, @kcpevey, @Jacob-Barkhak, @nluetts, @harmbuisman, @ceball, @mgsnuno, @srp3003, @jsignell as well as the maintainers @jbednar, @jlstevens and @philippjfr for contributing to this release. This version includes the addition of a large number of features, enhancements and bug fixes:

Major features:

  • Add link_selection to make custom linked brushing simple (#3951)
  • link_selection builds on new support for much more powerful data-transform pipelines: new Dataset.transform method (#237, #3932), dim expressions in Dataset.select (#3920), arbitrary method calls on dim expressions (#4080), and Dataset.pipeline and Dataset.dataset properties to track provenance of data
  • Add Annotators to allow easily drawing, editing, and annotating visual elements (#1185)
  • Completely replaced custom Javascript widgets with Panel-based widgets allowing for customizable layout (#84, #805)
  • Add HSpan, VSpan, Slope, Segments and Rectangles elements (#3510, #3532, #4000)
  • Add support for cuDF GPU dataframes, cuPy backed xarrays, and GPU datashading (#3982)

Other features

  • Add spatialpandas support and redesigned geometry interfaces for consistent roundtripping (#4120)
  • Support GIF rendering with Bokeh and Plotly backends (#2956 #4017)
  • Support for Plotly Bars, Bounds, Box, Ellipse, HLine, Histogram, RGB, VLine and VSpan plots
  • Add UniformNdMapping.collapse to collapse nested datastructures (#4250)
  • Add CurveEdit and SelectionXY stream (#4119, #4167)
  • Add apply_when helper to conditionally apply operations (#4289)
  • Display Javascript callback errors in the notebook (#4119)
  • Add support for linked streams in Plotly backend to enable rich interactivity (#3880, #3912)

Enhancements:

  • Support for packed values dimensions, e.g. 3D RGB/HSV arrays (#550, #3983)
  • Allow selecting/slicing datetimes with strings (#886)
  • Support for datashading Area, Spikes, Segments and Polygons (#4120)
  • HeatMap now supports mixed categorical/numeric axes (#2128)
  • Use __signature__ to generate .opts tab completions (#4193)
  • Allow passing element-specific keywords through datashade and rasterize (#4077, #3967)
  • Add per_element flag to .apply accessor (#4119)
  • Add selected plot option to control selected glyphs in bokeh (#4281)
  • Improve default Sankey node_padding heuristic (#4253)
  • Add hooks plot option for Plotly backend (#4157)
  • Support for split Violin plots in bokeh (#4112)

Bug fixes:

  • Fixed radial HeatMap sizing issues (#4162)
  • Switched to Panel for rendering machinery fixing various export issues (#3683)
  • Handle updating of user supplied HoverTool in bokeh (#4266)
  • Fix issues with single value datashaded plots (#3673)
  • Fix legend layout issues (#3786)
  • Fix linked axes issues with mixed date, categorical and numeric axes in bokeh (#3845)
  • Fixed handling of repeated dimensions in PandasInterface (#4139)
  • Fixed various issues related to widgets (#3868, #2885, #1677, #3212, #1059, #3027, #3777)

Library compatibility:

  • Better support for Pandas 1.0 (#4254)
  • Compatibility with Bokeh 2.0 (#4226)

Migration notes:

  • Geometry .iloc now indexes by geometry instead of by datapoint. Convert to dataframe or dictionary before using .iloc to access individual datapoints (#4104)
  • Padding around plot elements is now enabled by default, to revert set hv.config.node_padding = 0 (#1090)
  • Removed Bars group_index and stack_index options, which are now controlled using the stacked option (#3985)
  • .table is deprecated; use .collapse method instead and cast to Table (#3985)
  • HoloMap.split_overlays is deprecated and is now a private method (#3985)
  • Histogram.edges and Histogram.values properties are deprecated; usedimension_values (#3985)
  • Element.collapse_data is deprecated; use the container's .collapse method instead (#3985)
  • hv.output filename argument is deprecated; use hv.save instead (#3985)

Version 1.12.7

23 Nov 00:20
Compare
Choose a tag to compare

This a very minor hotfix release fixing an important bug related to
axiswise normalization between plots. Many thanks to @srp3003 and
@philippjfr for contributing to this release.

Enhancements:

  • Add styles attribute to PointDraw stream for consistency with other drawing streams (#3819)

Bug fixes:

  • Fixed shared_axes/axiswise regression (#4097)

Version 1.12.6

08 Oct 23:08
Compare
Choose a tag to compare

This is a minor release containing a large number of bug fixes thanks
to the contributions from @joelostblom, @ahuang11, @chbrandt,
@randomstuff, @jbednar and @philippjfr. It also contains a number of
enhancements. This is the last planned release in the 1.12.x series.

Enhancements:

  • Ensured that shared_axes option on layout plots is respected across backends (#3410)
  • Allow plotting partially irregular (curvilinear) mesh (#3952)
  • Add support for dependent functions in dynamic operations (#3975, #3980)
  • Add support for fast QuadMesh rasterization with datashader >= 0.8 (#4020)
  • Allow passing Panel widgets as operation parameter (#4028)

Bug fixes:

  • Fixed issue rounding datetimes in Curve step interpolation (#3958)
  • Fix resampling of categorical colorcet colormaps (#3977)
  • Ensure that changing the Stream source deletes the old source (#3978)
  • Ensure missing hover tool does not break plot (#3981)
  • Ensure .apply work correctly on HoloMaps (#3989, #4025)
  • Ensure Grid axes are always aligned in bokeh (#3916)
  • Fix hover tool on Image and Raster plots with inverted axis (#4010)
  • Ensure that DynamicMaps are still linked to streams after groupby (#4012)
  • Using hv.renderer no longer switches backends (#4013)
  • Ensure that Points/Scatter categorizes data correctly when axes are inverted (#4014)
  • Fixed error creating legend for matplotlib Image artists (#4031)
  • Ensure that unqualified Options objects are supported (#4032)
  • Fix bounds check when constructing Image with ImageInterface (#4035)
  • Ensure elements cannot be constructed with wrong number of columns (#4040)
  • Ensure streaming data works on bokeh server (#4041)

Compatibility:

  • Ensure HoloViews is fully compatible with xarray 0.13.0 (#3973)
  • Ensure that deprecated matplotlib 3.1 rcparams do not warn (#4042)
  • Ensure compatibility with new legend options in bokeh 1.4.0 (#4036)

Version 1.12.5

14 Aug 19:07
e2902ec
Compare
Choose a tag to compare

This is a very minor release primarily for compatibility with the latest version of dask (v2.2.0).

Compatibility:

  • The DaskInterface no longer attempts to import dask.dataframe unless it is already imported (#3900)
  • Scatter3D matplotlib rendering no longer errors with matplotlib >= 3.1 (#3898)

Bug fixes:

  • Fixed bug converting datetime64 to datetime for dates <1970 (#3879)

Version 1.12.4

05 Aug 13:30
cab8b05
Compare
Choose a tag to compare

This is a minor release with a number of bug and compatibility fixes
as well as a number of enhancements.

Many thanks to recent @henriqueribeiro, @poplarShift, @hojo590,
@stuarteberg, @justinbois, @schumann-tim, @ZuluPro and @jonmmease for
their contributions and the many users filing issues.

Enhancements:

  • Add numpy log to dim transforms (#3731)
  • Make Buffer stream following behavior togglable (#3823)
  • Added internal methods to access dask arrays and made histogram operation operate on dask arrays (#3854)
  • Optimized range finding if Dimension.range is set (#3860)
  • Add ability to use functions annotated with param.depends as DynamicMap callbacks (#3744)

Bug fixes:

  • Fixed handling datetimes on Spikes elements (#3736)
  • Fix graph plotting for unsigned integer node indices (#3773)
  • Fix sort=False on GridSpace and GridMatrix (#3769)
  • Fix extent scaling on VLine/HLine annotations (#3761)
  • Fix BoxWhisker to match convention (#3755)
  • Improved handling of custom array types (#3792)
  • Allow setting cmap on HexTiles in matplotlib (#3803)
  • Fixed handling of data_aspect in bokeh backend (#3848, #3872)
  • Fixed legends on bokeh Path plots (#3809)
  • Ensure Bars respect xlim and ylim (#3853)
  • Allow setting Chord edge colors using explicit colormapping (#3734)
  • Fixed bug in decimate operation (#3875)

Compatibility:

  • Improve compatibility with deprecated matplotlib rcparams (#3745, #3804)

Backwards incompatible changes:

  • Unfortunately due to a major mixup the data_aspect option added in 1.12.0 was not correctly implemented and fixing it changed its behavior significantly (inverting it entirely in some cases).
  • A mixup in the convention used to compute the whisker of a box-whisker plots was fixed resulting in different results going forward.

Version 1.12.3

20 May 15:04
a2fc3d3
Compare
Choose a tag to compare

This is a minor release primarily focused on a number of important bug
fixes. Thanks to our users for reporting issues, and special thanks to
the internal developers @philippjfr and @jlstevens and external
developers including @poplarShift, @fedario and @odoublewen for their
contributions.

Bug fixes:

  • Fixed regression causing unhashable data to cause errors in streams (#3681
  • Ensure that hv.help handles non-HoloViews objects (#3689)
  • Ensure that DataLink handles data containing NaNs (#3694)
  • Ensure that bokeh backend handles Cycle of markers (#3706)
  • Fix for using opts method on DynamicMap (#3691)
  • Ensure that bokeh backend handles DynamicMaps with variable length NdOverlay (#3696)
  • Fix default width/height setting for HeatMap (#3703)
  • Ensure that dask imports handle modularity (#3685)
  • Fixed regression in xarray data interface (#3724)
  • Ensure that RGB hover displays the integer RGB value (#3727)
  • Ensure that param streams handle subobjects (#3728)

Version 1.12.2

01 May 09:00
627f313
Compare
Choose a tag to compare

This is a minor release with a number of important bug fixes and a
small number of enhancements. Many thanks to our users for reporting
these issues, and special thanks to our internal developers
@philippjfr, @jlstevens and @jonmease and external contributors
incluing @ahuang11 and @arabidopsis for their contributions to the
code and the documentation.

Enhancements:

  • Add styles argument to draw tool streams to allow cycling colors
    and other styling when drawing glyphs (#3612)
  • Add ability to define alpha on (data)shade operation (#3611)
  • Ensure that categorical plots respect Dimension.values order (#3675)

Compatibility:

  • Compatibility with Plotly 3.8 (#3644)

Bug fixes:

  • Ensure that bokeh server plot updates have the exclusive Document lock (#3621)
  • Ensure that Dimensioned streams are inherited on __mul__ (#3658)
  • Ensure that bokeh hover tooltips are updated when dimensions change (#3609)
  • Fix DynamicMap.event method for empty streams (#3564)
  • Fixed handling of datetimes on Path plots (#3464, #3662)
  • Ensure that resampling operations do not cause event loops (#3614)

Backward compatibility:

  • Added color cycles on Violin and BoxWhisker elements due to earlier regression (#3592)

Version 1.12.1

18 Apr 19:08
Compare
Choose a tag to compare

This is a minor release that pins to the newly released Bokeh 1.1 and adds support for parameter instances as streams:

Enhancements:

  • Add support for passing in parameter instances as streams (#3616)

Version 1.12.0

08 Apr 01:22
Compare
Choose a tag to compare

This release provides a number of exciting new features as well as a set of important bug fixes. Many thanks to our users for reporting these issues, and special thanks to @ahuang11, @jonmmease, @poplarShift, @reckoner, @scottclowe and @syhooper for their contributions to the code and the documentation.

Features:

  • New plot options for controlling layouts including a responsive mode as well as improved control over aspect using the newly updated bokeh layout engine (#3450, #3575)
  • Added a succinct and powerful way of creating DynamicMaps from functions and methods via the new .apply method (#3554, #3474)

Enhancements:

  • Added a number of new plot options including a clabel param for colorbars (#3517), exposed Sankey font size (#3535) and added a radius for bokeh nodes (#3556)
  • Switched notebook output to use an HTML mime bundle instead of separate HTML and JS components (#3574)
  • Improved support for style mapping constant values via dim.categorize (#3578)

Bug fixes: