NanoVNASaver.Charts package

Submodules

NanoVNASaver.Charts.CLogMag module

class NanoVNASaver.Charts.CLogMag.CombinedLogMagChart(name='')[source]

Bases: LogMagChart

calc_scaling() None[source]
copy()[source]
drawChart(qp: QPainter)[source]
drawValues(qp: QPainter)[source]
resetDisplayLimits()[source]
resetReference()[source]
setCombinedData(data11, data21)[source]
setCombinedReference(data11, data21)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("CombinedLogMagChart" inherits "LogMagChart": )

NanoVNASaver.Charts.Capacitance module

class NanoVNASaver.Charts.Capacitance.CapacitanceChart(name='')[source]

Bases: FrequencyChart

staticMetaObject = PySide6.QtCore.QMetaObject("CapacitanceChart" inherits "FrequencyChart": )

NanoVNASaver.Charts.Chart module

class NanoVNASaver.Charts.Chart.Chart(name)[source]

Bases: QWidget

addSWRMarker(swr: float) None[source]
bands: ClassVar[Any] = None
clearSWRMarkers() None[source]
color: ClassVar[ChartColors] = ChartColors(background=PySide6.QtGui.QColor.fromRgbF(1.000000, 1.000000, 1.000000, 1.000000), foreground=PySide6.QtGui.QColor.fromRgbF(0.752941, 0.752941, 0.752941, 1.000000), reference=PySide6.QtGui.QColor.fromRgbF(0.000000, 0.000000, 1.000000, 0.250980), reference_secondary=PySide6.QtGui.QColor.fromRgbF(0.000000, 0.000000, 0.752941, 0.188235), sweep=PySide6.QtGui.QColor.fromRgbF(0.501961, 0.501961, 0.000000, 1.000000), sweep_secondary=PySide6.QtGui.QColor.fromRgbF(0.501961, 0.000000, 0.501961, 1.000000), swr=PySide6.QtGui.QColor.fromRgbF(1.000000, 0.000000, 0.000000, 0.501961), text=PySide6.QtGui.QColor.fromRgbF(0.000000, 0.000000, 0.000000, 1.000000), bands=PySide6.QtGui.QColor.fromRgbF(0.501961, 0.501961, 0.501961, 0.188235))
copy() Chart[source]
static drawMarker(x: int, y: int, qp: QPainter, color: QColor, number: int = 0) None[source]
drawTitle(qp: QPainter, position: QPoint | None = None) None[source]
getActiveMarker() Marker | None[source]
getNearestMarker(x, y) None | Marker[source]
getPosition(d: Datapoint) tuple[int, int][source]
mousePressEvent(event: QMouseEvent) None[source]
mouseReleaseEvent(a0: QMouseEvent) None[source]
popout_requested: ClassVar[Signal]
removeSWRMarker(swr: float) None[source]
resetReference() None[source]
saveScreenshot() None[source]
setBands(bands) None[source]
setData(data) None[source]
setDrawLines(draw_lines) None[source]
setLineThickness(thickness) None[source]
setMarkerSize(size) None[source]
setMarkers(markers) None[source]
setPointSize(size) None[source]
setReference(data) None[source]
setSweepTitle(title) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("Chart" inherits "QWidget": Methods:   #33 type=Signal, signature=popout_requested(PyObject), parameters=PyObject )
update(a=None, b=None, c=None, d=None) None[source]
wheelEvent(a0: QWheelEvent) None[source]
zoomTo(x1, y1, x2, y2)[source]
class NanoVNASaver.Charts.Chart.ChartColors(background: PySide6.QtGui.QColor = <factory>, foreground: PySide6.QtGui.QColor = <factory>, reference: PySide6.QtGui.QColor = <factory>, reference_secondary: PySide6.QtGui.QColor = <factory>, sweep: PySide6.QtGui.QColor = <factory>, sweep_secondary: PySide6.QtGui.QColor = <factory>, swr: PySide6.QtGui.QColor = <factory>, text: PySide6.QtGui.QColor = <factory>, bands: PySide6.QtGui.QColor = <factory>)[source]

Bases: object

background: QColor
bands: QColor
foreground: QColor
reference: QColor
reference_secondary: QColor
sweep: QColor
sweep_secondary: QColor
swr: QColor
text: QColor
class NanoVNASaver.Charts.Chart.ChartDimensions(height: int = 200, height_min: int = 200, width: int = 200, width_min: int = 200, line: int = 1, point: int = 2)[source]

Bases: object

height: int = 200
height_min: int = 200
line: int = 1
point: int = 2
width: int = 200
width_min: int = 200
class NanoVNASaver.Charts.Chart.ChartDragBox(pos: NanoVNASaver.Charts.Chart.ChartPosition = <factory>, pos_start: NanoVNASaver.Charts.Chart.ChartPosition = <factory>, state: bool = False, move_x: int = -1, move_y: int = -1)[source]

Bases: object

move_x: int = -1
move_y: int = -1
pos: ChartPosition
pos_start: ChartPosition
state: bool = False
class NanoVNASaver.Charts.Chart.ChartFlags(draw_lines: bool = False, is_popout: bool = False)[source]

Bases: object

draw_lines: bool = False
is_popout: bool = False
class NanoVNASaver.Charts.Chart.ChartMarker(qp: QPainter)[source]

Bases: QWidget

draw(x: int, y: int, color: QColor, text: str = '')[source]
staticMetaObject = PySide6.QtCore.QMetaObject("ChartMarker" inherits "QWidget": )
class NanoVNASaver.Charts.Chart.ChartPosition(x: int, y: int)[source]

Bases: NamedTuple

just a point in the chart

x: int

Alias for field number 0

y: int

Alias for field number 1

NanoVNASaver.Charts.Frequency module

class NanoVNASaver.Charts.Frequency.FrequencyChart(name)[source]

Bases: Chart

contextMenuEvent(event)[source]
copy()[source]
drawBands(qp, fstart, fstop)[source]
drawChart(qp: QPainter)[source]
drawData(qp: QPainter, data: list[Datapoint], color: QColor, y_function=None)[source]
drawDragbog(qp: QPainter)[source]
drawFrequencyTicks(qp)[source]
drawMarkers(qp, data=None, y_function=None)[source]
drawValues(qp: QPainter)[source]
frequencyAtPosition(x, limit=True) int[source]

Calculates the frequency at a given X-position :param limit: Determines whether frequencies outside the

currently displayed span can be returned.

Parameters:

x – The X position to calculate for.

Returns:

The frequency at the given position, if one exists or -1 otherwise. If limit is True, and the value is before or after the chart, returns minimum or maximum frequencies.

getPlotable(x, y, distantx, distanty)[source]
getXPosition(d: Datapoint) int[source]
getYPosition(d: Datapoint) int[source]
isPlotable(x, y)[source]
keyPressEvent(a0: QKeyEvent) None[source]
logarithmicYAllowed() bool[source]
mouseMoveEvent(a0: QMouseEvent)[source]
paintEvent(_: QPaintEvent) None[source]
resetDisplayLimits()[source]
resizeEvent(a0: QResizeEvent) None[source]
setFixedSpan(fixed_span: bool)[source]
setFixedValues(fixed_values: bool)[source]
setLogarithmicX(logarithmic: bool)[source]
setLogarithmicY(logarithmic: bool)[source]
setMaximumFrequency()[source]
setMaximumValue()[source]
setMinimumFrequency()[source]
setMinimumValue()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("FrequencyChart" inherits "Chart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

zoomTo(x1, y1, x2, y2)[source]

NanoVNASaver.Charts.GroupDelay module

class NanoVNASaver.Charts.GroupDelay.GroupDelayChart(name='', reflective=True)[source]

Bases: FrequencyChart

calc_data(data: list[Datapoint])[source]
calculateGroupDelay()[source]
copy()[source]
drawValues(qp: QPainter)[source]
draw_data(qp: QPainter, color: QColor, data: list[Datapoint], delay: list[Datapoint])[source]
getYPosition(d: Datapoint) int[source]
getYPositionFromDelay(delay: Datapoint) int[source]
setData(data)[source]
setReference(data)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("GroupDelayChart" inherits "FrequencyChart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

NanoVNASaver.Charts.Inductance module

class NanoVNASaver.Charts.Inductance.InductanceChart(name='')[source]

Bases: FrequencyChart

staticMetaObject = PySide6.QtCore.QMetaObject("InductanceChart" inherits "FrequencyChart": )

NanoVNASaver.Charts.LogMag module

class NanoVNASaver.Charts.LogMag.LogMagChart(name='')[source]

Bases: FrequencyChart

calc_scaling() None[source]
copy()[source]
drawValues(qp: QPainter) None[source]
draw_db_lines(qp, max_value: int, min_value: int, ticks) None[source]
draw_grid(qp)[source]
draw_swr_markers(qp) None[source]
getYPosition(d: Datapoint) int[source]
logMag(p: Datapoint) float[source]
staticMetaObject = PySide6.QtCore.QMetaObject("LogMagChart" inherits "FrequencyChart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

class NanoVNASaver.Charts.LogMag.TickVal(count: int = 0, first: float = 0.0, step: float = 0.0)[source]

Bases: object

count: int = 0
first: float = 0.0
step: float = 0.0
NanoVNASaver.Charts.LogMag.span2ticks(span: float, min_val: float) TickVal[source]

NanoVNASaver.Charts.Magnitude module

class NanoVNASaver.Charts.Magnitude.MagnitudeChart(name='')[source]

Bases: FrequencyChart

copy()[source]
drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
static magnitude(p: Datapoint) float[source]
staticMetaObject = PySide6.QtCore.QMetaObject("MagnitudeChart" inherits "FrequencyChart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

NanoVNASaver.Charts.MagnitudeZ module

class NanoVNASaver.Charts.MagnitudeZ.MagnitudeZChart(name='')[source]

Bases: FrequencyChart

copy()[source]
drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
logarithmicYAllowed() bool[source]
static magnitude(p: Datapoint) float[source]
staticMetaObject = PySide6.QtCore.QMetaObject("MagnitudeZChart" inherits "FrequencyChart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

NanoVNASaver.Charts.MagnitudeZSeries module

class NanoVNASaver.Charts.MagnitudeZSeries.MagnitudeZSeriesChart(name='')[source]

Bases: MagnitudeZChart

static magnitude(p: Datapoint) float[source]
staticMetaObject = PySide6.QtCore.QMetaObject("MagnitudeZSeriesChart" inherits "MagnitudeZChart": )

NanoVNASaver.Charts.MagnitudeZShunt module

class NanoVNASaver.Charts.MagnitudeZShunt.MagnitudeZShuntChart(name='')[source]

Bases: MagnitudeZChart

static magnitude(p: Datapoint) float[source]
staticMetaObject = PySide6.QtCore.QMetaObject("MagnitudeZShuntChart" inherits "MagnitudeZChart": )

NanoVNASaver.Charts.Permeability module

class NanoVNASaver.Charts.Permeability.PermeabilityChart(name='')[source]

Bases: FrequencyChart

drawChart(qp: QPainter)[source]
drawValues(qp: QPainter)[source]
getImYPosition(d: Datapoint) int[source]
getNearestMarker(x, y) Marker[source]
getReYPosition(d: Datapoint) int[source]
logarithmicYAllowed() bool[source]
staticMetaObject = PySide6.QtCore.QMetaObject("PermeabilityChart" inherits "FrequencyChart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

NanoVNASaver.Charts.Phase module

class NanoVNASaver.Charts.Phase.PhaseChart(name='')[source]

Bases: FrequencyChart

copy()[source]
drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
setUnwrap(unwrap: bool)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("PhaseChart" inherits "FrequencyChart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

NanoVNASaver.Charts.Polar module

class NanoVNASaver.Charts.Polar.PolarChart(name='')[source]

Bases: SquareChart

drawChart(qp: QPainter)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("PolarChart" inherits "SquareChart": )

NanoVNASaver.Charts.QFactor module

class NanoVNASaver.Charts.QFactor.QualityFactorChart(name='')[source]

Bases: FrequencyChart

drawChart(qp: QPainter)[source]
drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
staticMetaObject = PySide6.QtCore.QMetaObject("QualityFactorChart" inherits "FrequencyChart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

NanoVNASaver.Charts.RI module

class NanoVNASaver.Charts.RI.RealImaginaryChart(name='')[source]

Bases: FrequencyChart

contextMenuEvent(event)[source]
copy()[source]
drawHorizontalTicks(qp)[source]
drawValues(qp: QPainter) None[source]
find_scaling()[source]
getImYPosition(d: Datapoint) int[source]
getNearestMarker(x, y) Marker | None[source]
getReYPosition(d: Datapoint) int[source]
imag_scaling_constraints(min_imag, max_imag)[source]
setFixedValues(fixed_values: bool)[source]
setMaximumImagValue()[source]
setMaximumRealValue()[source]
setMinimumImagValue()[source]
setMinimumRealValue()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryChart" inherits "FrequencyChart": )
value(p: Datapoint) complex[source]
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

zoomTo(x1, y1, x2, y2)[source]

NanoVNASaver.Charts.RIMu module

class NanoVNASaver.Charts.RIMu.RealImaginaryMuChart(name='')[source]

Bases: RealImaginaryChart

contextMenuEvent(event)[source]
copy()[source]
drawChart(qp: QPainter)[source]
mu_r(p: Datapoint) complex[source]
setCoreArea()[source]
setCoreLength()[source]
setCoreWindings()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryMuChart" inherits "RealImaginaryChart": )
value(p: Datapoint) complex[source]

NanoVNASaver.Charts.RIZ module

class NanoVNASaver.Charts.RIZ.RealImaginaryZChart(name='')[source]

Bases: RealImaginaryChart

contextMenuEvent(event)[source]
drawChart(qp: QPainter)[source]
impedance(p: Datapoint) complex[source]
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryZChart" inherits "RealImaginaryChart": )
value(p: Datapoint) complex[source]

NanoVNASaver.Charts.RIZSeries module

class NanoVNASaver.Charts.RIZSeries.RealImaginaryZSeriesChart(name='')[source]

Bases: RealImaginaryZChart

impedance(p: Datapoint) complex[source]
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryZSeriesChart" inherits "RealImaginaryZChart": )

NanoVNASaver.Charts.RIZShunt module

class NanoVNASaver.Charts.RIZShunt.RealImaginaryZShuntChart(name='')[source]

Bases: RealImaginaryZChart

impedance(p: Datapoint) complex[source]
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryZShuntChart" inherits "RealImaginaryZChart": )

NanoVNASaver.Charts.SParam module

class NanoVNASaver.Charts.SParam.SParameterChart(name='')[source]

Bases: FrequencyChart

copy()[source]
drawChart(qp: QPainter)[source]
drawValues(qp: QPainter)[source]
getImYPosition(d: Datapoint) int[source]
getReYPosition(d: Datapoint) int[source]
getYPosition(d: Datapoint) int[source]
logMag(p: Datapoint) float[source]
staticMetaObject = PySide6.QtCore.QMetaObject("SParameterChart" inherits "FrequencyChart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

NanoVNASaver.Charts.Smith module

class NanoVNASaver.Charts.Smith.SmithChart(name='')[source]

Bases: SquareChart

drawChart(qp: QPainter) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("SmithChart" inherits "SquareChart": )

NanoVNASaver.Charts.Square module

class NanoVNASaver.Charts.Square.SquareChart(name='')[source]

Bases: Chart

drawChart(qp: QPainter) None[source]
drawValues(qp: QPainter)[source]
draw_data(qp: QPainter, color: QColor, data: list[Datapoint], fstart: int = 0, fstop: int = 0)[source]
getXPosition(d: Datapoint) int[source]
getYPosition(d: Datapoint) int[source]
mouseMoveEvent(a0: QMouseEvent)[source]
paintEvent(_: QPaintEvent) None[source]
resizeEvent(a0: QResizeEvent) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("SquareChart" inherits "Chart": )
zoomTo(x1, y1, x2, y2)[source]

NanoVNASaver.Charts.TDR module

class NanoVNASaver.Charts.TDR.TDRChart(name)[source]

Bases: Chart

contextMenuEvent(event) None[source]
copy() TDRChart[source]
decimals: int = 1
fixed_span: bool = False
fixed_values: bool = False
format_string: str = ''
isPlotable(x, y) bool[source]
lengthAtPosition(x: int, limit=True)[source]
marker_location: int = -1
max_display_length: int = 50
max_y_lim: float = 1000.0
min_display_length: int = 0
min_y_lim: float = 0.0
mouseMoveEvent(a0: QMouseEvent) None[source]
paintEvent(_: QPaintEvent) None[source]
resetDisplayLimits() None[source]
resizeEvent(a0: QResizeEvent) None[source]
setFixedSpan(fixed_span) None[source]
setFixedValues(fixed_values) None[source]
setMaximumLength() None[source]
setMaximumY() None[source]
setMinimumLength() None[source]
setMinimumY() None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("TDRChart" inherits "Chart": )
valueAtPosition(y: int) float[source]
zoomTo(x1, y1, x2, y2) None[source]

NanoVNASaver.Charts.VSWR module

class NanoVNASaver.Charts.VSWR.VSWRChart(name='')[source]

Bases: FrequencyChart

drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
getYPositionFromValue(vswr) int[source]
logarithmicYAllowed() bool[source]
resetDisplayLimits()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("VSWRChart" inherits "FrequencyChart": )
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

Module contents

class NanoVNASaver.Charts.CapacitanceChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
data: list[Datapoint]
draggedMarker: Marker | None
leftMargin: int
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("CapacitanceChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
class NanoVNASaver.Charts.Chart(name)[source]

Bases: QWidget

addSWRMarker(swr: float) None[source]
bands: ClassVar[Any] = None
clearSWRMarkers() None[source]
color: ClassVar[ChartColors] = ChartColors(background=PySide6.QtGui.QColor.fromRgbF(1.000000, 1.000000, 1.000000, 1.000000), foreground=PySide6.QtGui.QColor.fromRgbF(0.752941, 0.752941, 0.752941, 1.000000), reference=PySide6.QtGui.QColor.fromRgbF(0.000000, 0.000000, 1.000000, 0.250980), reference_secondary=PySide6.QtGui.QColor.fromRgbF(0.000000, 0.000000, 0.752941, 0.188235), sweep=PySide6.QtGui.QColor.fromRgbF(0.501961, 0.501961, 0.000000, 1.000000), sweep_secondary=PySide6.QtGui.QColor.fromRgbF(0.501961, 0.000000, 0.501961, 1.000000), swr=PySide6.QtGui.QColor.fromRgbF(1.000000, 0.000000, 0.000000, 0.501961), text=PySide6.QtGui.QColor.fromRgbF(0.000000, 0.000000, 0.000000, 1.000000), bands=PySide6.QtGui.QColor.fromRgbF(0.501961, 0.501961, 0.501961, 0.188235))
copy() Chart[source]
data: list[Datapoint]
draggedMarker: Marker | None
static drawMarker(x: int, y: int, qp: QPainter, color: QColor, number: int = 0) None[source]
drawTitle(qp: QPainter, position: QPoint | None = None) None[source]
getActiveMarker() Marker | None[source]
getNearestMarker(x, y) None | Marker[source]
getPosition(d: Datapoint) tuple[int, int][source]
markers: list[Marker]
mousePressEvent(event: QMouseEvent) None[source]
mouseReleaseEvent(a0: QMouseEvent) None[source]
name: str
popout_requested: ClassVar[Signal]
reference: list[Datapoint]
removeSWRMarker(swr: float) None[source]
resetReference() None[source]
saveScreenshot() None[source]
setBands(bands) None[source]
setData(data) None[source]
setDrawLines(draw_lines) None[source]
setLineThickness(thickness) None[source]
setMarkerSize(size) None[source]
setMarkers(markers) None[source]
setPointSize(size) None[source]
setReference(data) None[source]
setSweepTitle(title) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("Chart" inherits "QWidget": Methods:   #33 type=Signal, signature=popout_requested(PyObject), parameters=PyObject )
sweepTitle: str
swrMarkers: set[float]
update(a=None, b=None, c=None, d=None) None[source]
wheelEvent(a0: QWheelEvent) None[source]
zoomTo(x1, y1, x2, y2)[source]
class NanoVNASaver.Charts.CombinedLogMagChart(name='')[source]

Bases: LogMagChart

bottomMargin: int
calc_scaling() None[source]
copy()[source]
data: list[Datapoint]
data11: list[Datapoint]
data21: list[Datapoint]
draggedMarker: Marker | None
drawChart(qp: QPainter)[source]
drawValues(qp: QPainter)[source]
isInverted: bool
leftMargin: int
markers: list[Marker]
maxDisplayValue: int
maxValue: float
minDisplayValue: int
minValue: float
name: str
name_unit: str
reference: list[Datapoint]
reference11: list[Datapoint]
reference21: list[Datapoint]
resetDisplayLimits()[source]
resetReference()[source]
rightMargin: int
setCombinedData(data11, data21)[source]
setCombinedReference(data11, data21)[source]
span: float
staticMetaObject = PySide6.QtCore.QMetaObject("CombinedLogMagChart" inherits "LogMagChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
class NanoVNASaver.Charts.FrequencyChart(name)[source]

Bases: Chart

bottomMargin: int
contextMenuEvent(event)[source]
copy()[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawBands(qp, fstart, fstop)[source]
drawChart(qp: QPainter)[source]
drawData(qp: QPainter, data: list[Datapoint], color: QColor, y_function=None)[source]
drawDragbog(qp: QPainter)[source]
drawFrequencyTicks(qp)[source]
drawMarkers(qp, data=None, y_function=None)[source]
drawValues(qp: QPainter)[source]
frequencyAtPosition(x, limit=True) int[source]

Calculates the frequency at a given X-position :param limit: Determines whether frequencies outside the

currently displayed span can be returned.

Parameters:

x – The X position to calculate for.

Returns:

The frequency at the given position, if one exists or -1 otherwise. If limit is True, and the value is before or after the chart, returns minimum or maximum frequencies.

getPlotable(x, y, distantx, distanty)[source]
getXPosition(d: Datapoint) int[source]
getYPosition(d: Datapoint) int[source]
isPlotable(x, y)[source]
keyPressEvent(a0: QKeyEvent) None[source]
leftMargin: int
logarithmicYAllowed() bool[source]
markers: list[Marker]
mouseMoveEvent(a0: QMouseEvent)[source]
name: str
paintEvent(_: QPaintEvent) None[source]
reference: list[Datapoint]
resetDisplayLimits()[source]
resizeEvent(a0: QResizeEvent) None[source]
rightMargin: int
setFixedSpan(fixed_span: bool)[source]
setFixedValues(fixed_values: bool)[source]
setLogarithmicX(logarithmic: bool)[source]
setLogarithmicY(logarithmic: bool)[source]
setMaximumFrequency()[source]
setMaximumValue()[source]
setMinimumFrequency()[source]
setMinimumValue()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("FrequencyChart" inherits "Chart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

zoomTo(x1, y1, x2, y2)[source]
class NanoVNASaver.Charts.GroupDelayChart(name='', reflective=True)[source]

Bases: FrequencyChart

bottomMargin: int
calc_data(data: list[Datapoint])[source]
calculateGroupDelay()[source]
copy()[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawValues(qp: QPainter)[source]
draw_data(qp: QPainter, color: QColor, data: list[Datapoint], delay: list[Datapoint])[source]
getYPosition(d: Datapoint) int[source]
getYPositionFromDelay(delay: Datapoint) int[source]
leftMargin: int
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
setData(data)[source]
setReference(data)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("GroupDelayChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

class NanoVNASaver.Charts.InductanceChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
data: list[Datapoint]
draggedMarker: Marker | None
leftMargin: int
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("InductanceChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
class NanoVNASaver.Charts.LogMagChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
calc_scaling() None[source]
copy()[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawValues(qp: QPainter) None[source]
draw_db_lines(qp, max_value: int, min_value: int, ticks) None[source]
draw_grid(qp)[source]
draw_swr_markers(qp) None[source]
getYPosition(d: Datapoint) int[source]
isInverted: bool
leftMargin: int
logMag(p: Datapoint) float[source]
markers: list[Marker]
maxDisplayValue: int
maxValue: float
minDisplayValue: int
minValue: float
name: str
name_unit: str
reference: list[Datapoint]
rightMargin: int
span: float
staticMetaObject = PySide6.QtCore.QMetaObject("LogMagChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

class NanoVNASaver.Charts.MagnitudeChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
copy()[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
leftMargin: int
static magnitude(p: Datapoint) float[source]
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("MagnitudeChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

class NanoVNASaver.Charts.MagnitudeZChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
copy()[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
leftMargin: int
logarithmicYAllowed() bool[source]
static magnitude(p: Datapoint) float[source]
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("MagnitudeZChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

class NanoVNASaver.Charts.MagnitudeZSeriesChart(name='')[source]

Bases: MagnitudeZChart

bottomMargin: int
data: list[Datapoint]
draggedMarker: Marker | None
leftMargin: int
static magnitude(p: Datapoint) float[source]
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("MagnitudeZSeriesChart" inherits "MagnitudeZChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
class NanoVNASaver.Charts.MagnitudeZShuntChart(name='')[source]

Bases: MagnitudeZChart

bottomMargin: int
data: list[Datapoint]
draggedMarker: Marker | None
leftMargin: int
static magnitude(p: Datapoint) float[source]
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("MagnitudeZShuntChart" inherits "MagnitudeZChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
class NanoVNASaver.Charts.PermeabilityChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
data: list[Datapoint]
draggedMarker: Marker | None
drawChart(qp: QPainter)[source]
drawValues(qp: QPainter)[source]
getImYPosition(d: Datapoint) int[source]
getNearestMarker(x, y) Marker[source]
getReYPosition(d: Datapoint) int[source]
leftMargin: int
logarithmicYAllowed() bool[source]
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("PermeabilityChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

class NanoVNASaver.Charts.PhaseChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
copy()[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
leftMargin: int
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
setUnwrap(unwrap: bool)[source]
staticMetaObject = PySide6.QtCore.QMetaObject("PhaseChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

class NanoVNASaver.Charts.PolarChart(name='')[source]

Bases: SquareChart

data: list[Datapoint]
draggedMarker: Marker | None
drawChart(qp: QPainter)[source]
markers: list[Marker]
name: str
reference: list[Datapoint]
staticMetaObject = PySide6.QtCore.QMetaObject("PolarChart" inherits "SquareChart": )
sweepTitle: str
swrMarkers: set[float]
class NanoVNASaver.Charts.QualityFactorChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
data: list[Datapoint]
draggedMarker: Marker | None
drawChart(qp: QPainter)[source]
drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
leftMargin: int
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("QualityFactorChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

class NanoVNASaver.Charts.RealImaginaryChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
contextMenuEvent(event)[source]
copy()[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawHorizontalTicks(qp)[source]
drawValues(qp: QPainter) None[source]
find_scaling()[source]
getImYPosition(d: Datapoint) int[source]
getNearestMarker(x, y) Marker | None[source]
getReYPosition(d: Datapoint) int[source]
imag_scaling_constraints(min_imag, max_imag)[source]
leftMargin: int
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
setFixedValues(fixed_values: bool)[source]
setMaximumImagValue()[source]
setMaximumRealValue()[source]
setMinimumImagValue()[source]
setMinimumRealValue()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
value(p: Datapoint) complex[source]
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

zoomTo(x1, y1, x2, y2)[source]
class NanoVNASaver.Charts.RealImaginaryMuChart(name='')[source]

Bases: RealImaginaryChart

bottomMargin: int
contextMenuEvent(event)[source]
copy()[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawChart(qp: QPainter)[source]
leftMargin: int
markers: list[Marker]
mu_r(p: Datapoint) complex[source]
name: str
reference: list[Datapoint]
rightMargin: int
setCoreArea()[source]
setCoreLength()[source]
setCoreWindings()[source]
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryMuChart" inherits "RealImaginaryChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
value(p: Datapoint) complex[source]
class NanoVNASaver.Charts.RealImaginaryZChart(name='')[source]

Bases: RealImaginaryChart

bottomMargin: int
contextMenuEvent(event)[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawChart(qp: QPainter)[source]
impedance(p: Datapoint) complex[source]
leftMargin: int
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryZChart" inherits "RealImaginaryChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
value(p: Datapoint) complex[source]
class NanoVNASaver.Charts.RealImaginaryZSeriesChart(name='')[source]

Bases: RealImaginaryZChart

bottomMargin: int
data: list[Datapoint]
draggedMarker: Marker | None
impedance(p: Datapoint) complex[source]
leftMargin: int
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryZSeriesChart" inherits "RealImaginaryZChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
class NanoVNASaver.Charts.RealImaginaryZShuntChart(name='')[source]

Bases: RealImaginaryZChart

bottomMargin: int
data: list[Datapoint]
draggedMarker: Marker | None
impedance(p: Datapoint) complex[source]
leftMargin: int
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("RealImaginaryZShuntChart" inherits "RealImaginaryZChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
class NanoVNASaver.Charts.SParameterChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
copy()[source]
data: list[Datapoint]
draggedMarker: Marker | None
drawChart(qp: QPainter)[source]
drawValues(qp: QPainter)[source]
getImYPosition(d: Datapoint) int[source]
getReYPosition(d: Datapoint) int[source]
getYPosition(d: Datapoint) int[source]
leftMargin: int
logMag(p: Datapoint) float[source]
markers: list[Marker]
name: str
reference: list[Datapoint]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("SParameterChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.

class NanoVNASaver.Charts.SmithChart(name='')[source]

Bases: SquareChart

data: list[Datapoint]
draggedMarker: Marker | None
drawChart(qp: QPainter) None[source]
markers: list[Marker]
name: str
reference: list[Datapoint]
staticMetaObject = PySide6.QtCore.QMetaObject("SmithChart" inherits "SquareChart": )
sweepTitle: str
swrMarkers: set[float]
class NanoVNASaver.Charts.SquareChart(name='')[source]

Bases: Chart

data: list[Datapoint]
draggedMarker: Marker | None
drawChart(qp: QPainter) None[source]
drawValues(qp: QPainter)[source]
draw_data(qp: QPainter, color: QColor, data: list[Datapoint], fstart: int = 0, fstop: int = 0)[source]
getXPosition(d: Datapoint) int[source]
getYPosition(d: Datapoint) int[source]
markers: list[Marker]
mouseMoveEvent(a0: QMouseEvent)[source]
name: str
paintEvent(_: QPaintEvent) None[source]
reference: list[Datapoint]
resizeEvent(a0: QResizeEvent) None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("SquareChart" inherits "Chart": )
sweepTitle: str
swrMarkers: set[float]
zoomTo(x1, y1, x2, y2)[source]
class NanoVNASaver.Charts.TDRChart(name)[source]

Bases: Chart

contextMenuEvent(event) None[source]
copy() TDRChart[source]
data: list[Datapoint]
decimals: int = 1
draggedMarker: Marker | None
fixed_span: bool = False
fixed_values: bool = False
format_string: str = ''
isPlotable(x, y) bool[source]
lengthAtPosition(x: int, limit=True)[source]
marker_location: int = -1
markers: list[Marker]
max_display_length: int = 50
max_y_lim: float = 1000.0
min_display_length: int = 0
min_y_lim: float = 0.0
mouseMoveEvent(a0: QMouseEvent) None[source]
name: str
paintEvent(_: QPaintEvent) None[source]
reference: list[Datapoint]
resetDisplayLimits() None[source]
resizeEvent(a0: QResizeEvent) None[source]
setFixedSpan(fixed_span) None[source]
setFixedValues(fixed_values) None[source]
setMaximumLength() None[source]
setMaximumY() None[source]
setMinimumLength() None[source]
setMinimumY() None[source]
staticMetaObject = PySide6.QtCore.QMetaObject("TDRChart" inherits "Chart": )
sweepTitle: str
swrMarkers: set[float]
tdrWindow: QDialog
valueAtPosition(y: int) float[source]
zoomTo(x1, y1, x2, y2) None[source]
class NanoVNASaver.Charts.VSWRChart(name='')[source]

Bases: FrequencyChart

bottomMargin: int
data: list[Datapoint]
draggedMarker: Marker | None
drawValues(qp: QPainter)[source]
getYPosition(d: Datapoint) int[source]
getYPositionFromValue(vswr) int[source]
leftMargin: int
logarithmicYAllowed() bool[source]
markers: list[Marker]
name: str
reference: list[Datapoint]
resetDisplayLimits()[source]
rightMargin: int
staticMetaObject = PySide6.QtCore.QMetaObject("VSWRChart" inherits "FrequencyChart": )
sweepTitle: str
swrMarkers: set[float]
topMargin: int
valueAtPosition(y) list[float][source]

Returns the chart-specific value(s) at the specified Y-position :param y: The Y position to calculate for. :return: A list of the values at the Y-position, either

containing a single value, or the two values for the chart from left to right Y-axis. If no value can be found, returns the empty list. If the frequency is above or below the chart, returns maximum or minimum values.