v0.8.0
v0.8.0 (2 August 2016)
This release includes new features and bug fixes, including several breaking changes.
Breaking changes
- Dropped support for Python 2.6 (#855).
- Indexing on multi-index now drop levels, which is consistent with pandas. It also changes the name of the dimension / coordinate when the multi-index is reduced to a single index (#802).
- Contour plots no longer add a colorbar per default (#866). Filled contour plots are unchanged.
DataArray.valuesand.datanow always returns an NumPy array-like object, even for 0-dimensional arrays with object dtype (#867). Previously,.valuesreturned native Python objects in such cases. To convert the values of scalar arrays to Python objects, use the.item()method.
Enhancements
- Groupby operations now support grouping over multidimensional variables. A new method called
xarray.Dataset.groupby_binshas also been added to allow users to specify bins for grouping. The new features are described ingroupby.multidimandexamples.multidim. By Ryan Abernathey. - DataArray and Dataset method
wherenow supports adrop=Trueoption that clips coordinate elements that are fully masked. By Phillip J. Wolfram. - New top level
mergefunction allows for combining variables from any number ofDatasetand/orDataArrayvariables. Seemergefor more details. By Stephan Hoyer. - DataArray and Dataset method
resamplenow supports thekeep_attrs=Falseoption that determines whether variable and dataset attributes are retained in the resampled object. By Jeremy McGibbon. - Better multi-index support in DataArray and Dataset
selandlocmethods, which now behave more closely to pandas and which also accept dictionaries for indexing based on given level names and labels (seemulti-level indexing). By Benoit Bovy. - New (experimental) decorators
xarray.register_dataset_accessorandxarray.register_dataarray_accessorfor registering custom xarray extensions without subclassing. They are described in the new documentation page oninternals. By Stephan Hoyer. - Round trip boolean datatypes. Previously, writing boolean datatypes to netCDF formats would raise an error since netCDF does not have a
booldatatype. This feature reads/writes adtypeattribute to boolean variables in netCDF files. By Joe Hamman. - 2D plotting methods now have two new keywords (
cbar_axandcbar_kwargs), allowing more control on the colorbar (#872). By Fabien Maussion. - New Dataset method
filter_by_attrs, akin tonetCDF4.Dataset.get_variables_by_attributes, to easily filter data variables using its attributes. Filipe Fernandes.
Bug fixes
- Attributes were being retained by default for some resampling operations when they should not. With the
keep_attrs=Falseoption, they will no longer be retained by default. This may be backwards-incompatible with some scripts, but the attributes may be kept by adding thekeep_attrs=Trueoption. By Jeremy McGibbon. - Concatenating xarray objects along an axis with a MultiIndex or PeriodIndex preserves the nature of the index (#875). By Stephan Hoyer.
- Fixed bug in arithmetic operations on DataArray objects whose dimensions are numpy structured arrays or recarrays #861, #837. By Maciek Swat.
decode_cf_timedeltanow accepts arrays withndim>1 (#842). This fixes issue #665. Filipe Fernandes.- Fix a bug where
xarray.ufuncsthat take two arguments would incorrectly use to numpy functions instead of dask.array functions (#876). By Stephan Hoyer. - Support for pickling functions from
xarray.ufuncs(#901). By Stephan Hoyer. Variable.copy(deep=True)no longer converts MultiIndex into a base Index (#769). By Benoit Bovy.- Fixes for groupby on dimensions with a multi-index (#867). By Stephan Hoyer.
- Fix printing datasets with unicode attributes on Python 2 (#892). By Stephan Hoyer.
- Fixed incorrect test for dask version (#891). By Stephan Hoyer.
- Fixed
dimargument forisel_points/sel_pointswhen apandas.Indexis passed. By Stephan Hoyer. xarray.plot.contournow plots the correct number of contours (#866). By Fabien Maussion.