Datashader

Latest version: v0.16.1

Safety actively analyzes 619504 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 6

0.16.1

---------------------------

This release brings compatibility with new release of upstream packages. Thanks to first-time contributor `alexander-beedie <https://github.com/alexander-beedie>`_, and the regular contributors `philippjfr <https://github.com/philippjfr>`_, `ianthomas23 <https://github.com/ianthomas23>`_, `maximlt <https://github.com/maximlt>`_, and `Hoxbro <https://github.com/Hoxbro>`_.

Enhancements:

- Improved antialiased mean reduction (`1300 <https://github.com/holoviz/datashader/pull/1300>`_)
- Update the docstring of ``eq_hist`` (`1322 <https://github.com/holoviz/datashader/pull/1322>`_)

Compatibility:

- Python 3.12 support (`1317 <https://github.com/holoviz/datashader/pull/1317>`_)
- Basic ``dask_expr`` support (`1317 <https://github.com/holoviz/datashader/pull/1317>`_)
- Numpy 2.0 support (`1306 <https://github.com/holoviz/datashader/pull/1306>`_)
- Remove redundant py2 helper code (`1316 <https://github.com/holoviz/datashader/pull/1316>`_)

Maintenance:

- Replace Google Analytics with GoatCounter (`1309 <https://github.com/holoviz/datashader/pull/1309>`_)
- Docs: ignore numpydoc validation checks (`1310 <https://github.com/holoviz/datashader/pull/1310>`_)
- Fix test suite (`1314 <https://github.com/holoviz/datashader/pull/1314>`_)
- General maintenance (`1320 <https://github.com/holoviz/datashader/pull/1320>`_)

0.16.0

- ``Canvas.line``: ``LineString``, ``MultiLineString``, ``MultiPolygon``, ``Polygon``
- ``Canvas.point``: ``MultiPoint``, ``Point``
- ``Canvas.polygons``: ``MultiPolygon``, ``Polygon``

There is also support in ``Canvas.line`` for a new data type which is a 2D ``xarray.DataArray`` (within an ``xarray.Dataset``) containing the coordinates of multiple lines that share the same ``x`` coordinates.

The DataShape package is now vendored in Datashader as it has not been maintained for a number of years and is not accepting updates.

Thanks to new contributor `J08ny <https://github.com/J08ny>`_ and regular contributors `Hoxbro <https://github.com/Hoxbro>`_ and `ianthomas23 <https://github.com/ianthomas23>`_.

Enhancements:

- Support rendering of GeoPandas GeoDataFrames as lines, points and polygons (`1285 <https://github.com/holoviz/datashader/pull/1285>`_, `#1293 <https://github.com/holoviz/datashader/pull/1293>`_, `#1297 <https://github.com/holoviz/datashader/pull/1297>`_)
- Implement lines using 2D xarray with common x coordinates (`1282 <https://github.com/holoviz/datashader/pull/1282>`_)

General code improvements:

- Add debug logging to compiler module (`1280 <https://github.com/holoviz/datashader/pull/1280>`_)
- Vendor DataShape (`1284 <https://github.com/holoviz/datashader/pull/1284>`_)
- Don't use ``object`` as base class (`1286 <https://github.com/holoviz/datashader/pull/1286>`_)
- Fix typos using ``codespell`` (`1288 <https://github.com/holoviz/datashader/pull/1288>`_)
- Fix ``float16`` being a floating type. (`1290 <https://github.com/holoviz/datashader/pull/1290>`_)
- Simplify line ``_internal_build_extend`` (`1294 <https://github.com/holoviz/datashader/pull/1294>`_)

Improvements to CI:

- Update to latest ``holoviz_tasks`` (`1281 <https://github.com/holoviz/datashader/pull/1281>`_)
- Update ``codecov`` configuration (`1292 <https://github.com/holoviz/datashader/pull/1292>`_)
- Add ``pre-commit`` (`1295 <https://github.com/holoviz/datashader/pull/1295>`_, `#1296 <https://github.com/holoviz/datashader/pull/1296>`_)

Compatibility:

- Support Pandas 2.1 (`1276 <https://github.com/holoviz/datashader/pull/1276>`_, `#1287 <https://github.com/holoviz/datashader/pull/1287>`_)
- Replace ``np.NaN`` with ``np.nan`` (`1289 <https://github.com/holoviz/datashader/pull/1289>`_)
- Drop support for Python 3.8 (`1291 <https://github.com/holoviz/datashader/pull/1291>`_)

0.15.2

---------------------------

This release adds antialiased line support for inspection reductions such as ``max_n`` and ``where``, including within categorical ``by`` reductions. It also improves support for ``summary`` reductions and adds CUDA implementations of ``std`` and ``var`` reductions.

Thanks to regular contributors `Hoxbro <https://github.com/Hoxbro>`_, `ianthomas23 <https://github.com/ianthomas23>`_, `maximlt <https://github.com/maximlt>`_ and `thuydotm <https://github.com/thuydotm>`_.

Enhancements:

* Antialiasing line support for inspection reductions:

- Pre-compile antialias stage 2 combination (`1258 <https://github.com/holoviz/datashader/pull/1258>`_)
- Antialiased min and max row index reductions (`1259 <https://github.com/holoviz/datashader/pull/1259>`_)
- CPU ``shift_and_insert`` function (`1260 <https://github.com/holoviz/datashader/pull/1260>`_)
- Refactor of CUDA ``*_n`` reductions (`1261 <https://github.com/holoviz/datashader/pull/1261>`_)
- Support antialiased lines in ``*_n`` reductions (`1262 <https://github.com/holoviz/datashader/pull/1262>`_)
- Replace accumulate with copy on first call to antialiased stage 2 combine (`1264 <https://github.com/holoviz/datashader/pull/1264>`_)
- Separate where ``combine_cpu`` functions by ndim (`1265 <https://github.com/holoviz/datashader/pull/1265>`_)
- Antialiased line support for ``where`` reductions (`1269 <https://github.com/holoviz/datashader/pull/1269>`_)

* Improved support for ``summary`` reductions:

- Support ``by`` reduction within ``summary`` reduction (`1254 <https://github.com/holoviz/datashader/pull/1254>`_)
- Support ``summary`` containing ``by`` reduction with other reductions (`1257 <https://github.com/holoviz/datashader/pull/1257>`_)
- Support ``summary`` containing multiple ``where`` with the same selector (`1271 <https://github.com/holoviz/datashader/pull/1271>`_)

* CUDA support for ``std`` and ``var`` reductions (`1267 <https://github.com/holoviz/datashader/pull/1267>`_)

General code improvements:

- Remove pyarrow pin (`1248 <https://github.com/holoviz/datashader/pull/1248>`_)

Improvements to CI:

- Update ``holoviz_tasks`` to v0.1a15 (`1251 <https://github.com/holoviz/datashader/pull/1251>`_)
- Use ``holoviz_tasks/install`` action for docs (`1272 <https://github.com/holoviz/datashader/pull/1272>`_)

Improvements to documentation:

- Update readme to include Python 3.11 (`1249 <https://github.com/holoviz/datashader/pull/1249>`_)
- Correct links to pandas docs (`1250 <https://github.com/holoviz/datashader/pull/1250>`_)
- Remove twitter from index page (`1253 <https://github.com/holoviz/datashader/pull/1253>`_)
- Create FUNDING.yml (`1263 <https://github.com/holoviz/datashader/pull/1263>`_)

0.15.1

---------------------------

This release contains an important bug fix to ensure that categorical column order in maintained across dask partitions. It also adds support for categorical inspection reductions such as ``by(max_n)``. The only missing functionality for inspection reductions is now antialiased lines, which in planned for the next release.

Thanks to contributors `ianthomas23 <https://github.com/ianthomas23>`_, `maximlt <https://github.com/maximlt>`_ and `philippjfr <https://github.com/philippjfr>`_.

Bug fixes:

- Fix single category reductions (`1231 <https://github.com/holoviz/datashader/pull/1231>`_)
- Ensure categorical column order is the same across dask partitions (`1239 <https://github.com/holoviz/datashader/pull/1239>`_)

Enhancements:

* Categorical inspection reductions:

- Support ``by(max_n)`` and ``by(min_n)`` (`1229 <https://github.com/holoviz/datashader/pull/1229>`_)
- Categorical ``max_row_index``, ``max_n_row_index`` and ``min`` equivalents (`1233 <https://github.com/holoviz/datashader/pull/1233>`_)
- Use enum for row index column rather than ``None`` (`1234 <https://github.com/holoviz/datashader/pull/1234>`_)
- Add support for categorical ``where`` reductions (`1237 <https://github.com/holoviz/datashader/pull/1237>`_)
- Add tests for handling of NaNs in ``where`` reductions (`1241 <https://github.com/holoviz/datashader/pull/1241>`_)

* General code improvements:

- Only check ``dask.DataFrame`` ``dtypes`` of columns actually used (`1236 <https://github.com/holoviz/datashader/pull/1236>`_)
- Remove all use of ``OrderedDict`` (`1242 <https://github.com/holoviz/datashader/pull/1242>`_)
- Separate out 3d and 4d combine functions (`1243 <https://github.com/holoviz/datashader/pull/1243>`_)
- Reorganise antialiasing code (`1245 <https://github.com/holoviz/datashader/pull/1245>`_)

Improvements to CI:

- Bump holoviz tasks (`1240 <https://github.com/holoviz/datashader/pull/1240>`_)
- Add image is close test helper (`1244 <https://github.com/holoviz/datashader/pull/1244>`_)

Improvements to documentation:

- Update to Google Analytics 4 (`1228 <https://github.com/holoviz/datashader/pull/1228>`_)
- Rename pyviz-dev as holoviz-dev (`1232 <https://github.com/holoviz/datashader/pull/1232>`_)

0.15.0

---------------------------

This release provides significant improvements for inspection reductions by adding new ``first_n``, ``last_n``, ``max_n`` and ``min_n`` reductions, and providing Dask and CUDA support for all existing and new inspection reductions including ``where``. It also provides support for Numba 0.57, NumPy 1.24 and Python 3.11, and drops support for Python 3.7.

Thanks to first-time contributors `danigm <https://github.com/danigm>`_ and `Jap8nted <https://github.com/Jap8nted>`_, and also regulars `Hoxbro <https://github.com/Hoxbro>`_, `philippjfr <https://github.com/philippjfr>`_ and `ianthomas23 <https://github.com/ianthomas23>`_

Enhancements:

* Inspection reductions:

- Reduction append functions return index not boolean (`1180 <https://github.com/holoviz/datashader/pull/1180>`_)
- ``first_n``, ``last_n``, ``max_n`` and ``min_n`` reductions (`1184 <https://github.com/holoviz/datashader/pull/1184>`_)
- Add ``cuda`` argument to ``_build_combine`` (`1194 <https://github.com/holoviz/datashader/pull/1194>`_)
- Support ``max_n`` and ``min_n`` reductions on GPU (`1196 <https://github.com/holoviz/datashader/pull/1196>`_)
- Use fast cuda mutex available in numba 0.57 (`1212 <https://github.com/holoviz/datashader/pull/1212>`_)
- Dask support for ``first``, ``last``, ``first_n`` and ``last_n`` reductions (`1214 <https://github.com/holoviz/datashader/pull/1214>`_)
- Wrap use of cuda mutex in ``where`` reductions (`1217 <https://github.com/holoviz/datashader/pull/1217>`_)
- Cuda and cuda-with-dask support for inspection reductions (`1219 <https://github.com/holoviz/datashader/pull/1219>`_)

* x and y range attributes on returned aggregations (`1198 <https://github.com/holoviz/datashader/pull/1198>`_)

* Make ``datashader.composite`` imports lazy for faster import time (`1222 <https://github.com/holoviz/datashader/pull/1222>`_)

* Improvements to CI:

- Cancel concurrent test workflows (`1208 <https://github.com/holoviz/datashader/pull/1208>`_)

* Improvements to documentation:

- Inspection reduction documentation (`1186 <https://github.com/holoviz/datashader/pull/1186>`_, `#1190 <https://github.com/holoviz/datashader/pull/1190>`_)
- Upgrade to latest nbsite and pydata-sphinx-theme (`1221 <https://github.com/holoviz/datashader/pull/1221>`_)
- Use geodatasets in example data

Bug fixes:

* Fix conversion from ``cupy`` in categorical ``rescale_discrete_levels`` (`1179 <https://github.com/holoviz/datashader/pull/1179>`_)
* Validate canvas ``width``, ``height`` (`1183 <https://github.com/holoviz/datashader/pull/1183>`_)
* Support antialiasing in pipeline API (`1213 <https://github.com/holoviz/datashader/pull/1213>`_)

Compatibility:

* NumPy 1.24 compatibility (`1176 <https://github.com/holoviz/datashader/pull/1176>`_, `#1185 <https://github.com/holoviz/datashader/pull/1185>`_, `#1218 <https://github.com/holoviz/datashader/pull/1218>`_)

* Numba 0.57 compatibility (`1205 <https://github.com/holoviz/datashader/pull/1205>`_)

0.14.4

---------------------------

This release adds a new ``where`` reduction that provides improved inspection capabilities and adds support for colormaps that are tuples of hex values. There are also various bug fixes and compatibility improvements.

Thanks to `ianthomas23 <https://github.com/ianthomas23>`_, `maximlt <https://github.com/maximlt>`_ and `Hoxbro <https://github.com/Hoxbro>`_.

Enhancements:

* New ``where`` reduction to provide improved inspection functionality:

- Add new where reduction (`1155 <https://github.com/holoviz/datashader/pull/1155>`_)
- Where reduction using dataframe row index (`1164 <https://github.com/holoviz/datashader/pull/1164>`_)
- CUDA support for where reduction (`1167 <https://github.com/holoviz/datashader/pull/1167>`_)
- User guide page for where reduction (`1172 <https://github.com/holoviz/datashader/pull/1172>`_)

* Support colormaps that are tuples of hex values (`1173 <https://github.com/holoviz/datashader/pull/1173>`_)

* Add governance docs (`1165 <https://github.com/holoviz/datashader/pull/1165>`_)

* Improve documentation build system (`1170 <https://github.com/holoviz/datashader/pull/1170>`_, `#1171 <https://github.com/holoviz/datashader/pull/1171>`_)

* Improvements to CI:

- Rename default branch from ``master`` to ``main`` (`1156 <https://github.com/holoviz/datashader/pull/1156>`_)
- Use holoviz_task install action (`1163 <https://github.com/holoviz/datashader/pull/1163>`_)

Bug fixes:

* Validate calculated log canvas range (`1154 <https://github.com/holoviz/datashader/pull/1154>`_)

* Better validate ``canvas.line()`` coordinate lengths (`1160 <https://github.com/holoviz/datashader/pull/1160>`_)

* Return early in ``eq_hist()`` if all data masked out (`1168 <https://github.com/holoviz/datashader/pull/1168>`_)

Compatibility:

* Follow recommended ``numba`` best practice.

- Ensure cuda functions are correctly jitted (`1153 <https://github.com/holoviz/datashader/pull/1153>`_)
- ``nopython=True`` everywhere (`1162 <https://github.com/holoviz/datashader/pull/1162>`_)

* Update dependencies:

- Pip ``pyarrow`` in tests dependencies (`1174 <https://github.com/holoviz/datashader/pull/1174>`_)

Page 1 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.