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 thecolumn=
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 likeCanvas.line()
,Canvas.points()
, etc. The previousdownsample_method
is still accepted for this release, but is now deprecated. upsample_method
is nowinterpolate
, acceptinglinear=True
orlinear=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.
- Now accepts a reduction function via an
- Fixed various bugs, including one generating incorrect output in
Canvas.raster(agg='mode')