Skip to content

Commit

Permalink
Fixed bug computing categorical datashader aggregates
Browse files Browse the repository at this point in the history
  • Loading branch information
philippjfr committed Feb 2, 2018
1 parent 46b1754 commit f07021f
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions holoviews/operation/datashader.py
Expand Up @@ -374,9 +374,10 @@ def _process(self, element, key=None):
raise ValueError("Aggregation column %s not found on %s element. "
"Ensure the aggregator references an existing "
"dimension." % (column,element))
name = column
if isinstance(agg_fn, ds.count_cat):
name = '%s Count' % agg_fn.column
vdims = [dims[0](column)]
name = '%s Count' % column
vdims = [dims[0](name)]
else:
vdims = Dimension('Count')
params = dict(get_param_values(element), kdims=[x, y],
Expand All @@ -400,7 +401,7 @@ def _process(self, element, key=None):
for c in agg.coords[column].data:
cagg = agg.sel(**{column: c})
eldata = cagg if ds_version > '0.5.0' else (xs, ys, cagg.data)
layers[c] = self.p.element_type(eldata, **params)
layers[c] = self.p.element_type(eldata, **dict(params, vdims=vdims))
return NdOverlay(layers, kdims=[data.get_dimension(column)])


Expand Down Expand Up @@ -725,12 +726,12 @@ def concatenate(cls, overlay):
"""
if not isinstance(overlay, NdOverlay):
raise ValueError('Only NdOverlays can be concatenated')
xarr = xr.concat([v.data.T for v in overlay.values()],
xarr = xr.concat([v.data.transpose() for v in overlay.values()],
pd.Index(overlay.keys(), name=overlay.kdims[0].name))
params = dict(get_param_values(overlay.last),
vdims=overlay.last.vdims,
kdims=overlay.kdims+overlay.last.kdims)
return Dataset(xarr.T, datatype=['xarray'], **params)
return Dataset(xarr.transpose(), datatype=['xarray'], **params)


@classmethod
Expand Down

0 comments on commit f07021f

Please sign in to comment.