From 4168bf23aec7cd450623d431855a002e6572d075 Mon Sep 17 00:00:00 2001 From: Paul McCarthy <pauld.mccarthy@gmail.com> Date: Sun, 12 Jul 2015 14:03:27 +0100 Subject: [PATCH] HistogramSeries data range is exclusive on the upper bound, to match the behaviour of the MaskOpts.threshold property (the two are synced when a 3D histogram overlay is displayed) --- fsl/fslview/views/histogrampanel.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/fsl/fslview/views/histogrampanel.py b/fsl/fslview/views/histogrampanel.py index cfcf7c998..6bdc467dc 100644 --- a/fsl/fslview/views/histogrampanel.py +++ b/fsl/fslview/views/histogrampanel.py @@ -130,15 +130,16 @@ class HistogramSeries(plotpanel.DataSeries): finData = data[np.isfinite(data)] dmin = finData.min() dmax = finData.max() + dist = (dmax - dmin) / 10000.0 nzData = finData[finData != 0] nzmin = nzData.min() nzmax = nzData.max() self.dataRange.xmin = dmin - self.dataRange.xmax = dmax + self.dataRange.xmax = dmax + dist self.dataRange.xlo = nzmin - self.dataRange.xhi = nzmax + self.dataRange.xhi = nzmax + dist self.nbins = autoBin(nzData, self.dataRange.x) @@ -185,9 +186,9 @@ class HistogramSeries(plotpanel.DataSeries): nzData = self.nonZeroData self.clippedFiniteData = finData[(finData >= self.dataRange.xlo) & - (finData <= self.dataRange.xhi)] + (finData < self.dataRange.xhi)] self.clippedNonZeroData = nzData[ (nzData >= self.dataRange.xlo) & - (nzData <= self.dataRange.xhi)] + (nzData < self.dataRange.xhi)] if callHistPropsChanged: self.histPropsChanged() @@ -308,6 +309,10 @@ class HistogramSeries(plotpanel.DataSeries): def getData(self): + if len(self.xdata) == 0 or \ + len(self.ydata) == 0: + return self.xdata, self.ydata + # If smoothing is not enabled, we'll # munge the histogram data a bit so # that plt.plot(drawstyle='steps-pre') -- GitLab