Real/imag option for Y axis

This commit is contained in:
Jan Käberich 2021-10-11 15:22:08 +02:00
parent b15084032a
commit d9000903dc
4 changed files with 21 additions and 0 deletions

View File

@ -19,6 +19,12 @@ const set<TraceXYPlot::YAxisType> TraceXYPlot::YAxisTypes = {TraceXYPlot::YAxisT
TraceXYPlot::YAxisType::Magnitude,
TraceXYPlot::YAxisType::Phase,
TraceXYPlot::YAxisType::VSWR,
TraceXYPlot::YAxisType::Real,
TraceXYPlot::YAxisType::Imaginary,
TraceXYPlot::YAxisType::SeriesR,
TraceXYPlot::YAxisType::Capacitance,
TraceXYPlot::YAxisType::Inductance,
TraceXYPlot::YAxisType::QualityFactor,
TraceXYPlot::YAxisType::ImpulseReal,
TraceXYPlot::YAxisType::ImpulseMag,
TraceXYPlot::YAxisType::Step,
@ -782,6 +788,8 @@ QString TraceXYPlot::AxisTypeToName(TraceXYPlot::YAxisType type)
case YAxisType::Magnitude: return "Magnitude";
case YAxisType::Phase: return "Phase";
case YAxisType::VSWR: return "VSWR";
case YAxisType::Real: return "Real (R)";
case YAxisType::Imaginary: return "Imaginary (X)";
case YAxisType::SeriesR: return "Resistance";
case YAxisType::Capacitance: return "Capacitance";
case YAxisType::Inductance: return "Inductance";
@ -887,6 +895,12 @@ QPointF TraceXYPlot::traceToCoordinate(Trace *t, unsigned int sample, TraceXYPlo
case YAxisType::VSWR:
ret.setY(Util::SparamToVSWR(data.y));
break;
case YAxisType::Real:
ret.setY(data.y.real());
break;
case YAxisType::Imaginary:
ret.setY(data.y.imag());
break;
case YAxisType::SeriesR:
ret.setY(Util::SparamToResistance(data.y));
break;

View File

@ -17,6 +17,8 @@ public:
Magnitude,
Phase,
VSWR,
Real,
Imaginary,
// derived parameter options
SeriesR,
Capacitance,

View File

@ -12,6 +12,8 @@ XYplotAxisDialog::XYplotAxisDialog(TraceXYPlot *plot) :
ui->setupUi(this);
ui->Y1type->clear();
ui->Y2type->clear();
ui->Y1type->setMaxVisibleItems(20);
ui->Y2type->setMaxVisibleItems(20);
for(int i=0;i<(int) TraceXYPlot::YAxisType::Last;i++) {
ui->Y1type->addItem(TraceXYPlot::AxisTypeToName((TraceXYPlot::YAxisType) i));
@ -186,6 +188,8 @@ std::set<TraceXYPlot::YAxisType> XYplotAxisDialog::supportedYAxis(TraceXYPlot::X
ret.insert(TraceXYPlot::YAxisType::Magnitude);
ret.insert(TraceXYPlot::YAxisType::Phase);
ret.insert(TraceXYPlot::YAxisType::VSWR);
ret.insert(TraceXYPlot::YAxisType::Real);
ret.insert(TraceXYPlot::YAxisType::Imaginary);
ret.insert(TraceXYPlot::YAxisType::SeriesR);
ret.insert(TraceXYPlot::YAxisType::Capacitance);
ret.insert(TraceXYPlot::YAxisType::Inductance);

View File

@ -495,6 +495,7 @@ VNA::VNA(AppWindow *window)
}
cbSweepType->setCurrentIndex((int) sw);
});
configureToolbarForFrequencySweep();
// initial setup is frequency sweep
configureToolbarForFrequencySweep();
SetSweepType(SweepType::Frequency);