From 98221fe7b0c25ab10d20f5149ea8cf05f0934016 Mon Sep 17 00:00:00 2001
From: Philipp Rudiger
Date: Thu, 9 Nov 2017 18:09:50 +0000
Subject: [PATCH] Added handling of nans for bivariate element
---
holoviews/operation/stats.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/holoviews/operation/stats.py b/holoviews/operation/stats.py
index 76d9ab4ef7..70ff4e41b8 100644
--- a/holoviews/operation/stats.py
+++ b/holoviews/operation/stats.py
@@ -191,7 +191,8 @@ def _process(self, element, key=None):
elif ymin == ymax:
ymin, ymax = ymin-0.5, ymax+0.5
- if len(element) > 1:
+ data = data[:, np.isfinite(data).min(axis=0)]
+ if len(data) > 1:
kde = stats.gaussian_kde(data)
if self.p.bandwidth:
kde.set_bandwidth(self.p.bandwidth)
@@ -200,6 +201,7 @@ def _process(self, element, key=None):
ys = _kde_support((ymin, ymax), bw, self.p.n_samples, self.p.cut, ydim.range)
xx, yy = cartesian_product([xs, ys], False)
positions = np.vstack([xx.ravel(), yy.ravel()])
+ print(positions.shape)
f = np.reshape(kde(positions).T, xx.shape)
elif self.p.contours:
eltype = Polygons if self.p.filled else Contours