Class: QgsDiagramSettings

Stores the settings for rendering a single diagram.

QgsDiagramSettings stores the settings related to rendering the individual diagrams themselves, while QgsDiagramLayerSettings stores settings which control how ALL diagrams within a layer are rendered.

class qgis.core.QgsDiagramSettings[source]

Bases: object

Clockwise = 0
Counterclockwise = 1
class DiagramOrientation

Bases: int

class Direction

Bases: int

Down = 1
Height = 0
Horizontal = 0
class LabelPlacementMethod

Bases: int

Left = 2
Right = 3
class StackedDiagramMode

Bases: int

Up = 0
Vertical = 1
XHeight = 1
axisLineSymbol(self) QgsLineSymbol | None[source]

Returns the line symbol to use for rendering axis in diagrams.

See also

showAxis()

Added in version 3.12.

Return type:

Optional[QgsLineSymbol]

backgroundColor
barWidth
categoryAttributes
categoryColors
categoryLabels
diagramOrientation
direction(self) QgsDiagramSettings.Direction[source]

Returns the chart’s angular direction.

See also

setDirection()

Added in version 3.12.

Return type:

QgsDiagramSettings.Direction

enabled
font
labelPlacementMethod
legendItems(self, nodeLayer: QgsLayerTreeLayer | None) List[QgsLayerTreeModelLegendNode]

Returns list of legend nodes for the diagram

Note

caller is responsible for deletion of QgsLayerTreeModelLegendNodes

Parameters:

nodeLayer (Optional[QgsLayerTreeLayer])

Return type:

List[QgsLayerTreeModelLegendNode]

lineSizeScale: QgsMapUnitScale
lineSizeUnit: RenderUnit
maximumScale: float
minimumScale: float
minimumSize: float
opacity: float
paintEffect(self) QgsPaintEffect | None[source]

Returns the paint effect to use while rendering diagrams.

See also

setPaintEffect()

Added in version 3.12.

Return type:

Optional[QgsPaintEffect]

penColor
penWidth
readXml(self, elem: QDomElement, context: QgsReadWriteContext = QgsReadWriteContext())[source]

Reads diagram settings from XML

Parameters:
rotationOffset: float
scaleBasedVisibility
scaleByArea
setAxisLineSymbol(self, symbol: QgsLineSymbol | None)[source]

Sets the line symbol to use for rendering axis in diagrams.

Ownership of symbol is transferred to the settings.

See also

axisLineSymbol()

See also

setShowAxis()

Added in version 3.12.

Parameters:

symbol (Optional[QgsLineSymbol])

setDirection(self, direction: QgsDiagramSettings.Direction)[source]

Sets the chart’s angular direction.

See also

direction()

Added in version 3.12.

Parameters:

direction (QgsDiagramSettings.Direction)

setPaintEffect(self, effect: QgsPaintEffect | None)[source]

Sets the paint effect to use while rendering diagrams.

Ownership of effect is transferred to the settings.

See also

paintEffect()

Added in version 3.12.

Parameters:

effect (Optional[QgsPaintEffect])

setShowAxis(self, showAxis: bool)[source]

Sets whether the diagram axis should be shown.

See also

showAxis()

Added in version 3.12.

Parameters:

showAxis (bool)

setSpacing(self, spacing: float)[source]

Sets the spacing between diagram contents.

Spacing units are set via setSpacingUnit().

See also

spacing()

See also

setSpacingUnit()

Added in version 3.12.

Parameters:

spacing (float)

setSpacingMapUnitScale(self, scale: QgsMapUnitScale)[source]

Sets the map unit scale for the content spacing.

See also

setSpacing()

See also

setSpacingUnit()

Added in version 3.12.

Parameters:

scale (QgsMapUnitScale)

setSpacingUnit(self, unit: Qgis.RenderUnit)[source]

Sets the unit for the content spacing.

See also

spacingUnit()

See also

setSpacing()

Added in version 3.12.

Parameters:

unit (Qgis.RenderUnit)

setStackedDiagramSpacing(self, spacing: float)[source]

Sets the spacing between subdiagrams in a stacked diagram.

Spacing units are set via setStackedDiagramSpacingUnit().

Added in version 3.40.

Parameters:

spacing (float)

setStackedDiagramSpacingMapUnitScale(self, scale: QgsMapUnitScale)[source]

Sets the map unit scale for the spacing between subdiagrams in a stacked diagram.

Added in version 3.40.

Parameters:

scale (QgsMapUnitScale)

setStackedDiagramSpacingUnit(self, unit: Qgis.RenderUnit)[source]

Sets the unit for the spacing between subdiagrams in a stacked diagram.

Added in version 3.40.

Parameters:

unit (Qgis.RenderUnit)

showAxis(self) bool[source]

Returns True if the diagram axis should be shown.

See also

setShowAxis()

See also

axisLineSymbol()

Added in version 3.12.

Return type:

bool

size
sizeScale: QgsMapUnitScale
sizeType: RenderUnit
spacing(self) float[source]

Returns the spacing between diagram contents.

Spacing units can be retrieved by calling spacingUnit().

See also

setSpacing()

See also

spacingUnit()

Added in version 3.12.

Return type:

float

spacingMapUnitScale(self) QgsMapUnitScale

Returns the map unit scale for the content spacing.

See also

spacing()

See also

spacingUnit()

Added in version 3.12.

Return type:

QgsMapUnitScale

spacingUnit(self) Qgis.RenderUnit[source]

Returns the units for the content spacing.

See also

setSpacingUnit()

See also

spacing()

Added in version 3.12.

Return type:

Qgis.RenderUnit

stackedDiagramMode
stackedDiagramSpacing(self) float[source]

Returns the spacing between subdiagrams in a stacked diagram.

Spacing units can be retrieved by calling stackedDiagramSpacingUnit().

Added in version 3.40.

Return type:

float

stackedDiagramSpacingMapUnitScale(self) QgsMapUnitScale

Returns the map unit scale for the spacing between subdiagrams in a stacked diagram.

Added in version 3.40.

Return type:

QgsMapUnitScale

stackedDiagramSpacingUnit(self) Qgis.RenderUnit[source]

Returns the units for the spacing between subdiagrams in a stacked diagram.

Added in version 3.40.

Return type:

Qgis.RenderUnit

writeXml(self, rendererElem: QDomElement, doc: QDomDocument, context: QgsReadWriteContext = QgsReadWriteContext())[source]

Writes diagram settings to XML

Parameters:
  • rendererElem (QDomElement)

  • doc (QDomDocument)

  • context (QgsReadWriteContext = QgsReadWriteContext())