Skip to content

Releases: holoviz/datashader

v0.7.0

08 Apr 20:24
77defac
Compare
Choose a tag to compare

This release includes major contributions from @jonmmease (raqgged array extension, SpatialPointsFrame, row-oriented line storage, dask trimesh support), @jsignell (maintenance, website), and @jbednar (Panel-based dashboard).

New features:

  • Simplified Panel-based dashboard using new Param features; now only 48 lines with fewer new concepts (#707)
  • Added pandas ExtensionArray and Dask support for storing homogeneous ragged arrays (#687)
  • Added SpatialPointsFrame and updated census, osm-1billion, and osm examples to use it (#702, #706, #708)
  • Expanded 8_Geography.ipynb to document other geo-related functions
  • Added Dask support for trimesh rendering, though computing the mesh initially still requires vertices and simplicies to fit into memory (#696)
  • Add zero-copy rendering of row-oriented line coordinates, using a new axis argument (#694)

Bugfixes and compatibility:

  • Added lnglat_to_meters to geo module; new code should import it from there (#708)

Version 0.6.9

29 Jan 15:11
f945be4
Compare
Choose a tag to compare

This release includes major contributions from @jonmmease (fixing several long-standing bugs), @jlstevens (updating all example notebooks to use current syntax, #685), @jbednar, @philippjfr, and @jsignell (Panel-based dashboard), and @brendancol (geo utilities).

New features:

  • Replaced outdated 536-line Bokeh dashboard.py with 71-line Panel+HoloViews dashboard .ipynb (#676)
  • Allow aggregating xarray objects (in addition to Pandas and Dask DataFrames) (#675)
  • Create WMTS tiles from Datashader data (#636)
  • Added various geographic utility functions (ndvi, slope, aspect, hillshade, mean, bump map, Perlin noise) (#661)
  • Made OpenSky data public (#691)

Bugfixes and compatibility:

  • Fix array bounds error on line glyph (#683)
  • Fixed the span argument to tf.shade (#680)
  • Fixed composite.add (for use in spreading) to clip colors rather than overflow (#689)
  • Fixed gerrymandering shape file (#688)
  • Updated to match Bokeh (#656), Dask (#681, #667), Pandas/Numpy (#697)

Version 0.6.8

11 Sep 11:21
Compare
Choose a tag to compare

Minor, mostly bugfix, release with some speed improvements.

New features:

  • Added Strange Attractors example (#632)
  • Major speedup: optimized dask datashape detection (#634)

Bugfixes and compatibility:

  • Silenced inappropriate warnings (#631)
  • Fixed various other bugs, including #644
  • Added handling for zero data and zero range (#612, #648)

Version 0.6.7

07 Jul 16:52
Compare
Choose a tag to compare

Minor compatibility release.

  • Supports dask >= 0.18.
  • Updated installation and usage instructions

0.6.6

20 May 05:15
eb9218c
Compare
Choose a tag to compare

Minor bugfix release.

  • Now available to install using pip (pip install datashader) or conda defaults (conda install datashader)
  • InteractiveImage is now deprecated; please use the Datashader support in HoloViews instead.
  • Updated installation and example instructions to use new datashader command.
  • Made package building automatic, to allow more frequent releases
  • Ensured transparent (not black) image is returned when there is no data to plot (thanks to Nick Xie)
  • Simplified getting-started example (thanks to David Jones)
  • Various fixes and compatibility updates to examples

0.6.5

01 Feb 02:11
Compare
Choose a tag to compare

Major release with extensive support for triangular meshes and changes to the raster API.

New features:

  • Trimesh support: Rendering of irregular triangular meshes using Canvas.trimesh() (see user guide) (#525,#552)
  • Added a new website at datashader.org, with new Getting Started pages and an extensive User Guide, with about 50% new material not previously in example notebooks. Built entirely from Jupyter notebooks, which can be run in the examples/ directory. Website is now complete except for sections on points (see the nyc_taxi example in the meantime).
  • Canvas.raster() now accepts xarray Dataset types, not just DataArrays, with the specific DataArray selectable from the Dataset using the column= argument of a supplied aggregation function.
  • tf.Images() now displays anything with an HTML representation, to allow laying out Pandas dataframes alongside datashader output.

Bugfixes and compatibility:

  • Changed Raster API to match other glyph types:
    • Now accepts a reduction function via an agg= argument like Canvas.line(), Canvas.points(), etc. The previous downsample_method is still accepted for this release, but is now deprecated.
    • upsample_method is now interpolate, accepting linear=True or linear=False; the previous spelling is now deprecated.
    • The layer= argument previously accepted a 1-based integer index, which was confusing given the standard Python 0-based indexing elsewhere. Changed to accept an xarray coordinate, which can be a 1-based index if that's what is defined on the array, but also works with arbitrary floating-point coordinates (e.g. for a depth parameter in an image stack).
    • Now auto-ranges in x and y when not given explicit ranges, instead of raising an error.
  • Fixed various bugs, including one generating incorrect output in Canvas.raster(agg='mode')

0.6.4

05 Dec 22:44
Compare
Choose a tag to compare

Minor compatibility release to track changes in external packages.

  • Updated imports for bokeh 0.12.11 (fixes #535), though there are issues in 0.12.11 itself and so 0.12.12 should be used instead (to be released shortly).
  • Pinned pillow version on Windows (fixes #534).

0.6.3

01 Dec 00:30
Compare
Choose a tag to compare

Apart from the new website, this is a minor release primarily to catch up with changes in external libraries.

New features:

  • Reorganized examples directory as the basis for a completely new website at https://bokeh.github.io/datashader-docs (#516).
  • Added tf.Images() class to format multiple labeled Datashader images as a table in a Jupyter notebook, now used extensively in the new website.
  • Added utility function dataframe_from_multiple_sequences(x_values, y_values) to convert large numbers of sequences stored as 2D numpy arrays to a NaN-separated pandas dataframe that can be displayed efficiently (see new example in tseries.ipynb) (#512).
  • Improved streaming support (#520).

Bugfixes and compatibility:

  • Added support for Dask 0.15 and 0.16 and pandas 0.21 (#523,#529) and declared minimum required Numba version.
  • Improved and fixed issues with various example notebooks, primarily to update for changes in dependencies.
  • Changes in network graph support: ignore id field by default to avoid surprising dependence on column name, rename directly_connect_edges to connect_edges for accuracy and conciseness.

0.6.2

25 Oct 18:39
Compare
Choose a tag to compare

Release with bugfixes, changes to match external libraries, and some new features.

Backwards compatibility:

  • Minor changes to network graph API, e.g. to ignore weights by default in forcelayout2 (#488)
  • Fix upper-bound bin error for auto-ranged data (#459). Previously, points falling on the upper bound of the plotted area were excluded from the plot, which was consistent with the behavior for individual grid cells, but which was confusing and misleading for the outer boundaries. Points falling on the very outermost boundaries are now folded into the final grid cell, which should be the least surprising behavior.

New or updated examples (.ipynb files in examples/):

  • streaming-aggregation.ipynb: Illustrates combining incoming streams of data for display (also see holoviews streaming).
  • landsat.ipynb: simplified using HoloViews; now includes plots of full spectrum for each point via hovering.
  • Updated and simplified census-hv-dask (now called census-congressional), census-hv, packet_capture_graph.

New features and improvements

  • Updated Bokeh support to work with new bokeh 0.12.10 release (#505)
  • More options for network/graph plotting (configurable column names, control over weights usage; #488, #494)
  • For lines plots (time series, trajectory, networ graphs), switch line-clipping algorithm from Cohen-Sutherland to Liang-Barsky. The performance gains for random lines range from 50-75% improvement for a million lines. (#495)
  • Added tf.Images class to format a list of images as an HTML table (#492)
  • Faster resampling/regridding operations (#486)

Known issues:

  • examples/dashboard has not yet been updated to match other libraries, and is thus missing functionality like hovering and legends.
  • A full website with documentation has been started but is not yet ready for deployment.

0.6.1

13 Sep 22:48
Compare
Choose a tag to compare

Minor bugfix release, primarily updating example notebooks to match API changes in external packages.

Backwards compatibility:

  • Made edge bundling retain edge order, to allow indexing, and absolute coordinates, to allow overlaying on external data.
  • Updated examples to show that xarray now requires dimension names to match before doing arithmetic or comparisons between arrays.

Known issues:

  • If you use Jupyter notebook 5.0 (earlier or later versions should be ok), you will need to override a setting that prevents visualizations from appearing, e.g.: jupyter notebook --NotebookApp.iopub_data_rate_limit=100000000 census.ipynb &
  • The dashboard needs to be rewritten entirely to match current Bokeh and HoloViews releases, so that hover and legend support can be restored.