From dccae4ae9bfb42685ae3b502d04eb8a00b8fd689 Mon Sep 17 00:00:00 2001
From: "Joachim Wuttke (l)" <j.wuttke@fz-juelich.de>
Date: Tue, 21 Mar 2017 09:25:47 +0100
Subject: [PATCH] plot only pixels that are fully within plot limits

---
 pub/lib/plot.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/pub/lib/plot.cpp b/pub/lib/plot.cpp
index 4182d9a8..be8c9ad5 100644
--- a/pub/lib/plot.cpp
+++ b/pub/lib/plot.cpp
@@ -556,7 +556,9 @@ namespace {
             const CSpec* s = fd->VS(j);
             vector<double> xlim = triv::histogram_limits(s->x);
             for (size_t i=0; i<s->size(); ++i)
-                if (s->y[i])
+                if (s->y[i] && plot->Y.contains(s->y[i])
+                    && plot->X.contains(xlim[i]) && plot->X.contains(xlim[i+1])
+                    && plot->Z.contains(zlim[j]) && plot->Z.contains(zlim[j+1]))
                     plot->ps_line(
                         str(format("%13.7g wx %13.7g wx  %13.7g wy %13.7g wy  %13.7g wh t2d")
                             % xlim[i] % xlim[i+1] % zlim[j] % zlim[j+1] % s->y[i] ) );
-- 
GitLab