Class: QgsScaleBarSettings

class qgis.core.QgsScaleBarSettings

Bases: sip.wrapper

The QgsScaleBarSettings class stores the appearance and layout settings for scalebar drawing with QgsScaleBarRenderer.

QgsScaleBarSettings() Constructor for QgsScaleBarSettings.

QgsScaleBarSettings(other: QgsScaleBarSettings) Copy constructor

Methods

alignment

Returns the scalebar alignment.

alternateFillSymbol

Returns the secondary fill symbol used to render the scalebar (only used for some scalebar types).

boxContentSpace

Returns the spacing (margin) between the scalebar box and content in millimeters.

brush

Returns the primary brush used for filling the scalebar.

brush2

Returns the secondary brush for the scalebar.

divisionLineSymbol

Returns the line symbol used to render the scalebar divisions (only used for some scalebar types).

fillColor

Returns the color used for fills in the scalebar.

fillColor2

Returns the secondary color used for fills in the scalebar.

fillSymbol

Returns the primary fill symbol used to render the scalebar (only used for some scalebar types).

font

Returns the font used for drawing text in the scalebar.

fontColor

Returns the color used for drawing text in the scalebar.

height

Returns the scalebar height (in millimeters).

labelBarSpace

Returns the spacing (in millimeters) between labels and the scalebar.

labelHorizontalPlacement

Returns the horizontal placement of text labels.

labelVerticalPlacement

Returns the vertical placement of text labels.

lineCapStyle

Returns the cap style used for drawing lines in the scalebar.

lineColor

Returns the color used for lines in the scalebar.

lineJoinStyle

Returns the join style used for drawing lines in the scalebar.

lineSymbol

Returns the line symbol used to render the scalebar (only used for some scalebar types).

lineWidth

Returns the line width in millimeters for lines in the scalebar.

mapUnitsPerScaleBarUnit

Returns the number of map units per scale bar unit used by the scalebar.

maximumBarWidth

Returns the maximum width (in millimeters) for scale bar segments.

minimumBarWidth

Returns the minimum width (in millimeters) for scale bar segments.

numberOfSegments

Returns the number of segments included in the scalebar.

numberOfSegmentsLeft

Returns the number of segments included in the left part of the scalebar.

numberOfSubdivisions

Returns the number of subdivisions for segments included in the right part of the scalebar (only used for some scalebar types).

numericFormat

Returns the numeric format used for numbers in the scalebar.

pen

Returns the pen used for drawing outlines in the scalebar.

segmentSizeMode

Returns the size mode for the scale bar segments.

setAlignment

Sets the scalebar alignment.

setAlternateFillSymbol

Sets the secondary fill symbol used to render the scalebar (only used for some scalebar types).

setBoxContentSpace

Sets the space (margin) between the scalebar box and content in millimeters.

setBrush

Sets the primary brush used for filling the scalebar.

setBrush2

Sets the secondary brush used for filling the scalebar.

setDivisionLineSymbol

Sets the line symbol used to render the scalebar divisions (only used for some scalebar types).

setFillColor

Sets the color used for fills in the scalebar.

setFillColor2

Sets the secondary color used for fills in the scalebar.

setFillSymbol

Sets the primary fill symbol used to render the scalebar (only used for some scalebar types).

setFont

Sets the font used for drawing text in the scalebar.

setFontColor

Sets the color used for drawing text in the scalebar.

setHeight

Sets the scalebar height (in millimeters).

setLabelBarSpace

Sets the spacing (in millimeters) between labels and the scalebar.

setLabelHorizontalPlacement

Sets the horizontal placement of text labels.

setLabelVerticalPlacement

Sets the vertical placement of text labels.

setLineCapStyle

Sets the cap style used when drawing the lines in the scalebar.

setLineColor

Sets the color used for lines in the scalebar.

setLineJoinStyle

Sets the join style used when drawing the lines in the scalebar

setLineSymbol

Sets the line symbol used to render the scalebar (only used for some scalebar types).

setLineWidth

Sets the line width in millimeters for lines in the scalebar.

setMapUnitsPerScaleBarUnit

Sets the number of map units per scale bar unit used by the scalebar.

setMaximumBarWidth

Sets the maximum width (in millimeters) for scale bar segments.

setMinimumBarWidth

Sets the minimum width (in millimeters) for scale bar segments.

setNumberOfSegments

Sets the number of segments included in the scalebar.

setNumberOfSegmentsLeft

Sets the number of segments included in the left part of the scalebar.

setNumberOfSubdivisions

Sets the number of subdivisions for segments included in the right part of the scalebar (only used for some scalebar types).

setNumericFormat

Sets the numeric format used for numbers in the scalebar.

setPen

Sets the pen used for drawing outlines in the scalebar.

setSegmentSizeMode

Sets the size mode for scale bar segments.

setSubdivisionLineSymbol

Sets the line symbol used to render the scalebar subdivisions (only used for some scalebar types).

setSubdivisionsHeight

Sets the scalebar subdivisions height (in millimeters) for segments included in the right part of the scalebar (only used for some scalebar types).

setTextFormat

Sets the text format used for drawing text in the scalebar.

setUnitLabel

Sets the label for units.

setUnits

Sets the distance units used by the scalebar.

setUnitsPerSegment

Sets the number of scalebar units per segment.

subdivisionLineSymbol

Returns the line symbol used to render the scalebar subdivisions (only used for some scalebar types).

subdivisionsHeight

Returns the scalebar subdivisions height (in millimeters) for segments included in the right part of the scalebar (only used for some scalebar types).

textFormat

Returns the text format used for drawing text in the scalebar.

unitLabel

Returns the label for units.

units

Returns the distance units used by the scalebar.

unitsPerSegment

Returns the number of scalebar units per segment.

Attributes

AlignLeft

AlignMiddle

AlignRight

LabelAboveSegment

LabelBelowSegment

LabelCenteredEdge

LabelCenteredSegment

SegmentSizeFitWidth

SegmentSizeFixed

AlignLeft = 0
AlignMiddle = 1
AlignRight = 2
class Alignment

Bases: int

LabelAboveSegment = 0
LabelBelowSegment = 1
LabelCenteredEdge = 0
LabelCenteredSegment = 1
class LabelHorizontalPlacement

Bases: int

class LabelVerticalPlacement

Bases: int

SegmentSizeFitWidth = 1
SegmentSizeFixed = 0
class SegmentSizeMode

Bases: int

alignment(self) QgsScaleBarSettings.Alignment

Returns the scalebar alignment.

See also

setAlignment()

Return type:

QgsScaleBarSettings.Alignment

alternateFillSymbol(self) QgsFillSymbol | None

Returns the secondary fill symbol used to render the scalebar (only used for some scalebar types).

Ownership is not transferred.

See also

fillSymbol()

Added in version 3.14.

Return type:

Optional[QgsFillSymbol]

boxContentSpace(self) float

Returns the spacing (margin) between the scalebar box and content in millimeters.

Return type:

float

brush(self) QBrush

Returns the primary brush used for filling the scalebar.

See also

setBrush()

See also

brush2()

See also

pen()

Deprecated since version use: fillSymbol() instead

Return type:

QBrush

brush2(self) QBrush

Returns the secondary brush for the scalebar. This is used for alternating color style scalebars, such as single and double box styles.

See also

setBrush2()

See also

brush()

Deprecated since version use: alternateFillSymbol() instead

Return type:

QBrush

divisionLineSymbol(self) QgsLineSymbol | None

Returns the line symbol used to render the scalebar divisions (only used for some scalebar types).

Ownership is not transferred.

See also

lineSymbol()

Added in version 3.14.

Return type:

Optional[QgsLineSymbol]

fillColor(self) QColor

Returns the color used for fills in the scalebar.

See also

setFillColor()

See also

fillColor2()

Deprecated since version use: fillSymbol() instead.

Return type:

QColor

fillColor2(self) QColor

Returns the secondary color used for fills in the scalebar.

See also

setFillColor2()

See also

fillColor()

Deprecated since version use: alternateFillSymbol() instead

Return type:

QColor

fillSymbol(self) QgsFillSymbol | None

Returns the primary fill symbol used to render the scalebar (only used for some scalebar types).

Ownership is not transferred.

See also

setFillSymbol()

Added in version 3.14.

Return type:

Optional[QgsFillSymbol]

font(self) QFont

Returns the font used for drawing text in the scalebar.

See also

setFont()

Deprecated since version use: textFormat() instead

Return type:

QFont

fontColor(self) QColor

Returns the color used for drawing text in the scalebar.

See also

setFontColor()

See also

font()

Deprecated since version use: textFormat() instead

Return type:

QColor

height(self) float

Returns the scalebar height (in millimeters).

See also

setHeight()

Return type:

float

labelBarSpace(self) float

Returns the spacing (in millimeters) between labels and the scalebar.

Return type:

float

labelHorizontalPlacement(self) QgsScaleBarSettings.LabelHorizontalPlacement

Returns the horizontal placement of text labels.

Added in version 3.10.

Return type:

QgsScaleBarSettings.LabelHorizontalPlacement

labelVerticalPlacement(self) QgsScaleBarSettings.LabelVerticalPlacement

Returns the vertical placement of text labels.

Added in version 3.10.

Return type:

QgsScaleBarSettings.LabelVerticalPlacement

lineCapStyle(self) Qt.PenCapStyle

Returns the cap style used for drawing lines in the scalebar.

Deprecated since version use: lineSymbol() instead

Return type:

Qt.PenCapStyle

lineColor(self) QColor

Returns the color used for lines in the scalebar.

See also

setLineColor()

Deprecated since version use: lineSymbol() instead.

Return type:

QColor

lineJoinStyle(self) Qt.PenJoinStyle

Returns the join style used for drawing lines in the scalebar.

Deprecated since version use: lineSymbol() instead

Return type:

Qt.PenJoinStyle

lineSymbol(self) QgsLineSymbol | None

Returns the line symbol used to render the scalebar (only used for some scalebar types).

Ownership is not transferred.

See also

setLineSymbol()

Added in version 3.14.

Return type:

Optional[QgsLineSymbol]

lineWidth(self) float

Returns the line width in millimeters for lines in the scalebar.

See also

setLineWidth()

Deprecated since version use: lineSymbol() instead.

Return type:

float

mapUnitsPerScaleBarUnit(self) float

Returns the number of map units per scale bar unit used by the scalebar.

Return type:

float

maximumBarWidth(self) float

Returns the maximum width (in millimeters) for scale bar segments. This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.

Return type:

float

minimumBarWidth(self) float

Returns the minimum width (in millimeters) for scale bar segments. This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.

Return type:

float

numberOfSegments(self) int

Returns the number of segments included in the scalebar.

Return type:

int

numberOfSegmentsLeft(self) int

Returns the number of segments included in the left part of the scalebar.

Return type:

int

numberOfSubdivisions(self) int

Returns the number of subdivisions for segments included in the right part of the scalebar (only used for some scalebar types).

Note

The number of subdivisions represents the number of subdivision segments, not the number of subdivision lines. E.g. if the number is 1 then NO subdivision lines will be shown.

Added in version 3.14.

Return type:

int

numericFormat(self) QgsNumericFormat | None

Returns the numeric format used for numbers in the scalebar.

Added in version 3.12.

Return type:

Optional[QgsNumericFormat]

pen(self) QPen

Returns the pen used for drawing outlines in the scalebar.

See also

setPen()

See also

brush()

Deprecated since version use: lineSymbol() instead.

Return type:

QPen

segmentSizeMode(self) QgsScaleBarSettings.SegmentSizeMode

Returns the size mode for the scale bar segments.

Return type:

QgsScaleBarSettings.SegmentSizeMode

setAlignment(self, alignment: QgsScaleBarSettings.Alignment)

Sets the scalebar alignment.

See also

alignment()

Parameters:

alignment (QgsScaleBarSettings.Alignment)

setAlternateFillSymbol(self, symbol: QgsFillSymbol | None)

Sets the secondary fill symbol used to render the scalebar (only used for some scalebar types). Ownership of symbol is transferred to the scalebar.

See also

setFillSymbol()

Added in version 3.14.

Parameters:

symbol (Optional[QgsFillSymbol])

setBoxContentSpace(self, space: float)

Sets the space (margin) between the scalebar box and content in millimeters.

Parameters:

space (float)

setBrush(self, brush: QBrush | QColor | Qt.GlobalColor | QGradient)

Sets the primary brush used for filling the scalebar.

See also

brush()

Deprecated since version use: setFillSymbol() instead

Parameters:

brush (Union[QBrush)

setBrush2(self, brush: QBrush | QColor | Qt.GlobalColor | QGradient)

Sets the secondary brush used for filling the scalebar.

See also

brush()

Deprecated since version use: setAlternateFillSymbol() instead

Parameters:

brush (Union[QBrush)

setDivisionLineSymbol(self, symbol: QgsLineSymbol | None)

Sets the line symbol used to render the scalebar divisions (only used for some scalebar types). Ownership of symbol is transferred to the scalebar.

See also

setLineSymbol()

Added in version 3.14.

Parameters:

symbol (Optional[QgsLineSymbol])

setFillColor(self, color: QColor | Qt.GlobalColor)

Sets the color used for fills in the scalebar.

See also

fillColor()

See also

setFillColor2()

Deprecated since version use: setFillSymbol() instead.

Parameters:

color (Union[QColor)

setFillColor2(self, color: QColor | Qt.GlobalColor)

Sets the secondary color used for fills in the scalebar.

See also

fillColor2()

See also

setFillColor2()

Deprecated since version use: setAlternateFillSymbol() instead.

Parameters:

color (Union[QColor)

setFillSymbol(self, symbol: QgsFillSymbol | None)

Sets the primary fill symbol used to render the scalebar (only used for some scalebar types). Ownership of symbol is transferred to the scalebar.

See also

fillSymbol()

Added in version 3.14.

Parameters:

symbol (Optional[QgsFillSymbol])

setFont(self, font: QFont)

Sets the font used for drawing text in the scalebar.

See also

font()

Deprecated since version use: setTextFormat() instead

Parameters:

font (QFont)

setFontColor(self, color: QColor | Qt.GlobalColor)

Sets the color used for drawing text in the scalebar.

See also

fontColor()

See also

setFont()

Deprecated since version use: textFormat() instead

Parameters:

color (Union[QColor)

setHeight(self, height: float)

Sets the scalebar height (in millimeters).

See also

height()

Parameters:

height (float)

setLabelBarSpace(self, space: float)

Sets the spacing (in millimeters) between labels and the scalebar.

See also

labelBarSpace()

Parameters:

space (float)

setLabelHorizontalPlacement(self, placement: QgsScaleBarSettings.LabelHorizontalPlacement)

Sets the horizontal placement of text labels.

Added in version 3.10.

Parameters:

placement (QgsScaleBarSettings.LabelHorizontalPlacement)

setLabelVerticalPlacement(self, placement: QgsScaleBarSettings.LabelVerticalPlacement)

Sets the vertical placement of text labels.

Added in version 3.10.

Parameters:

placement (QgsScaleBarSettings.LabelVerticalPlacement)

setLineCapStyle(self, style: Qt.PenCapStyle)

Sets the cap style used when drawing the lines in the scalebar.

See also

lineCapStyle()

Deprecated since version use: setLineSymbol() instead

Parameters:

style (Qt.PenCapStyle)

setLineColor(self, color: QColor | Qt.GlobalColor)

Sets the color used for lines in the scalebar.

See also

lineColor()

Deprecated since version use: setLineSymbol() instead.

Parameters:

color (Union[QColor)

setLineJoinStyle(self, style: Qt.PenJoinStyle)

Sets the join style used when drawing the lines in the scalebar

See also

lineJoinStyle()

Deprecated since version use: setLineSymbol() instead

Parameters:

style (Qt.PenJoinStyle)

setLineSymbol(self, symbol: QgsLineSymbol | None)

Sets the line symbol used to render the scalebar (only used for some scalebar types). Ownership of symbol is transferred to the scalebar.

See also

lineSymbol()

Added in version 3.14.

Parameters:

symbol (Optional[QgsLineSymbol])

setLineWidth(self, width: float)

Sets the line width in millimeters for lines in the scalebar.

See also

lineWidth()

Deprecated since version use: setLineSymbol() instead.

Parameters:

width (float)

setMapUnitsPerScaleBarUnit(self, units: float)

Sets the number of map units per scale bar unit used by the scalebar.

Parameters:

units (float)

setMaximumBarWidth(self, width: float)

Sets the maximum width (in millimeters) for scale bar segments. This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.

Parameters:

width (float)

setMinimumBarWidth(self, width: float)

Sets the minimum width (in millimeters) for scale bar segments. This property is only effective if the segmentSizeMode() is set to SegmentSizeFitWidth.

Parameters:

width (float)

setNumberOfSegments(self, segments: int)

Sets the number of segments included in the scalebar.

Parameters:

segments (int)

setNumberOfSegmentsLeft(self, segments: int)

Sets the number of segments included in the left part of the scalebar.

Parameters:

segments (int)

setNumberOfSubdivisions(self, subdivisions: int)

Sets the number of subdivisions for segments included in the right part of the scalebar (only used for some scalebar types).

Note

The number of subdivisions represents the number of subdivision segments, not the number of subdivision lines. E.g. if the number is 1 then NO subdivision lines will be shown.

Added in version 3.14.

Parameters:

subdivisions (int)

setNumericFormat(self, format: QgsNumericFormat | None)

Sets the numeric format used for numbers in the scalebar.

Ownership of format is transferred to the settings.

See also

numericFormat()

Added in version 3.12.

Parameters:

format (Optional[QgsNumericFormat])

setPen(self, pen: QPen | QColor | Qt.GlobalColor)

Sets the pen used for drawing outlines in the scalebar.

See also

pen()

Deprecated since version use: setLineSymbol() instead.

Parameters:

pen (Union[QPen)

setSegmentSizeMode(self, mode: QgsScaleBarSettings.SegmentSizeMode)

Sets the size mode for scale bar segments.

Parameters:

mode (QgsScaleBarSettings.SegmentSizeMode)

setSubdivisionLineSymbol(self, symbol: QgsLineSymbol | None)

Sets the line symbol used to render the scalebar subdivisions (only used for some scalebar types). Ownership of symbol is transferred to the scalebar.

See also

setLineSymbol()

Added in version 3.14.

Parameters:

symbol (Optional[QgsLineSymbol])

setSubdivisionsHeight(self, height: float)

Sets the scalebar subdivisions height (in millimeters) for segments included in the right part of the scalebar (only used for some scalebar types).

Added in version 3.14.

Parameters:

height (float)

setTextFormat(self, format: QgsTextFormat)

Sets the text format used for drawing text in the scalebar.

See also

textFormat()

Added in version 3.2.

Parameters:

format (QgsTextFormat)

setUnitLabel(self, label: str | None)

Sets the label for units.

See also

unitLabel()

Parameters:

label (Optional[str])

setUnits(self, units: Qgis.DistanceUnit)

Sets the distance units used by the scalebar.

See also

units()

Parameters:

units (Qgis.DistanceUnit)

setUnitsPerSegment(self, units: float)

Sets the number of scalebar units per segment.

Parameters:

units (float)

subdivisionLineSymbol(self) QgsLineSymbol | None

Returns the line symbol used to render the scalebar subdivisions (only used for some scalebar types).

Ownership is not transferred.

See also

lineSymbol()

Added in version 3.14.

Return type:

Optional[QgsLineSymbol]

subdivisionsHeight(self) float

Returns the scalebar subdivisions height (in millimeters) for segments included in the right part of the scalebar (only used for some scalebar types).

Added in version 3.14.

Return type:

float

textFormat(self) QgsTextFormat

Returns the text format used for drawing text in the scalebar.

See also

setTextFormat()

Added in version 3.2.

Return type:

QgsTextFormat

unitLabel(self) str

Returns the label for units.

See also

setUnitLabel()

Return type:

str

units(self) Qgis.DistanceUnit

Returns the distance units used by the scalebar.

See also

setUnits()

Return type:

Qgis.DistanceUnit

unitsPerSegment(self) float

Returns the number of scalebar units per segment.

Return type:

float