summaryrefslogtreecommitdiff
path: root/gr-qtgui/lib/FrequencyDisplayPlot.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gr-qtgui/lib/FrequencyDisplayPlot.cc')
-rw-r--r--gr-qtgui/lib/FrequencyDisplayPlot.cc22
1 files changed, 11 insertions, 11 deletions
diff --git a/gr-qtgui/lib/FrequencyDisplayPlot.cc b/gr-qtgui/lib/FrequencyDisplayPlot.cc
index 087a176d5e..3784ec1501 100644
--- a/gr-qtgui/lib/FrequencyDisplayPlot.cc
+++ b/gr-qtgui/lib/FrequencyDisplayPlot.cc
@@ -186,8 +186,6 @@ FrequencyDisplayPlot::FrequencyDisplayPlot(int nplots, QWidget* parent)
_noiseFloorAmplitude = -HUGE_VAL;
- replot();
-
_zoomer = new FreqDisplayZoomer(canvas(), 0);
#if QWT_VERSION < 0x060000
@@ -213,6 +211,8 @@ FrequencyDisplayPlot::FrequencyDisplayPlot(int nplots, QWidget* parent)
((QwtLegendItem*)w)->setChecked(true);
w = legendDisplay->find(_max_fft_plot_curve);
((QwtLegendItem*)w)->setChecked(true);
+
+ replot();
}
FrequencyDisplayPlot::~FrequencyDisplayPlot()
@@ -263,8 +263,11 @@ FrequencyDisplayPlot::setFrequencyRange(const double centerfreq,
setAxisScaleDraw(QwtPlot::xBottom, new FreqDisplayScaleDraw(display_units));
setAxisTitle(QwtPlot::xBottom, QString("Frequency (%1)").arg(strunits.c_str()));
- if(reset)
- _resetXAxisPoints();
+ if(reset) {
+ _resetXAxisPoints();
+ clearMaxData();
+ clearMinData();
+ }
((FreqDisplayZoomer*)_zoomer)->setFrequencyPrecision(display_units);
((FreqDisplayZoomer*)_zoomer)->setUnitType(strunits);
@@ -343,12 +346,11 @@ FrequencyDisplayPlot::plotNewData(const std::vector<double*> dataPoints,
clearMinData();
}
- for(int i = 0; i < _nplots; i++) {
- memcpy(_dataPoints[i], dataPoints[i], numDataPoints*sizeof(double));
- }
-
double bottom=1e20, top=-1e20;
for(int n = 0; n < _nplots; n++) {
+
+ memcpy(_dataPoints[n], dataPoints[n], numDataPoints*sizeof(double));
+
for(int64_t point = 0; point < numDataPoints; point++) {
if(dataPoints[n][point] < _minFFTPoints[point]) {
_minFFTPoints[point] = dataPoints[n][point];
@@ -449,7 +451,7 @@ void
FrequencyDisplayPlot::_resetXAxisPoints()
{
double fft_bin_size = (_stopFrequency-_startFrequency)
- / static_cast<double>(_numPoints);
+ / static_cast<double>(_numPoints-1);
double freqValue = _startFrequency;
for(int64_t loc = 0; loc < _numPoints; loc++) {
_xAxisPoints[loc] = freqValue;
@@ -461,8 +463,6 @@ FrequencyDisplayPlot::_resetXAxisPoints()
// Set up zoomer base for maximum unzoom x-axis
// and reset to maximum unzoom level
QwtDoubleRect zbase = _zoomer->zoomBase();
- zbase.setLeft(_startFrequency);
- zbase.setRight(_stopFrequency);
_zoomer->zoom(zbase);
_zoomer->setZoomBase(zbase);
_zoomer->setZoomBase(true);