GraphsTheme QML Type

A visual style for graphs. More...

Import Statement: import QtGraphs
In C++: QGraphsTheme

Properties

Detailed Description

This type is used to specify visual properties that affect the whole graph. There are several built-in themes that can be used as is or modified freely.

Themes can be created from scratch by using the GraphsTheme.Theme.UserDefined enum value.

Customizing Theme

The default theme is QtGreen, but it is possible to customize each property.

The following table lists the properties controlled by a theme and the default values for QGraphsTheme.Theme.UserDefined.

PropertyDefault Value
backgroundVisibletrue
seriesColorsQt::black
seriesGradientsQLinearGradient. Essentially fully black.
colorStyleUniform
labelFontQFont
gridVisibletrue
labelBackgroundVisibletrue
labelBorderVisibletrue
labelsVisibletrue

Usage examples

Using a built-in theme without any modifications:

 Scatter3D {
     theme: GraphsTheme { theme: GraphsTheme.Theme.YellowSeries }
     ...

Using a built-in theme and modifying some properties:

 Bars3D {
     theme: GraphsTheme {
         theme: GraphsTheme.Theme.QtGreenNeon
         labelBorderVisible: true
         labelFont.pointSize: 35
         labelBackgroundVisible: false
     }
     ...

Using a user-defined theme:

 Surface3D {
     theme: GraphsTheme {
         theme: GraphsTheme.Theme.UserDefined
         backgroundColor: "red"
         backgroundVisible: true
         seriesColors: ["blue"]
         colorStyle: GraphsTheme.ColorStyle.Uniform
         labelFont.family: "Lucida Handwriting"
         labelFont.pointSize: 35
         gridVisible: false
         grid.mainColor: "red"
         grid.subColor: "blue"
         labelBackgroundColor: "black"
         labelBackgroundVisible: true
         labelBorderVisible: false
         labelTextColor: "white"
         multiHighlightColor: "green"
         singleHighlightColor: "darkRed"
     }
     ...

For GraphsTheme enums, see GraphsTheme::colorStyle and GraphsTheme::theme.

Property Documentation

GraphsLine.labelTextColor : color

The color of the text used for labels. The default value depends on colorScheme.


GraphsLine.mainColor : color

The color of the main lines. The default value depends on colorScheme.


GraphsLine.mainWidth : real

The width of the main lines. The default value is 2.0.

If it is set for grid lines, only has effect if Q3DGraphsWidgetItem::gridLineType is Graphs3D.GridLineType.Shader


GraphsLine.subColor : color

The color of the sub lines. The default value depends on colorScheme.


GraphsLine.subWidth : real

The color of the main lines. The default value is 1.0.

If it is set for grid lines, only has effect if Q3DGraphsWidgetItem::gridLineType is Graphs3D.GridLineType.Shader



axisXLabelFont : font

Sets the font to be used for labels on axisX.



axisYLabelFont : font

Sets the font to be used for labels on axisY.



axisZLabelFont : font

Sets the font to be used for labels on axisZ.


backgroundColor : color

The color of the view the graph is drawn into. The default value depends on colorScheme.


backgroundVisible : bool

Defines whether the view background is drawn by using the value of backgroundColor. The default value is true.


baseColors : list<Color> [read-only]

The list of base colors to be used for all the objects in the graph, series by series. If there are more series than colors, color list wraps and starts again with the first color in the list. Has no immediate effect if colorStyle is not GraphsTheme.ColorStyle.Uniform.

This can be overridden by setting Abstract3DSeries.baseColor explicitly in the series.


baseGradients : list<Gradient> [read-only]

The list of base gradients to be used for all the objects in the graph, series by series. If there are more series than gradients, the gradient list wraps and starts again with the first gradient in the list.

Has no immediate effect if colorStyle is GraphsTheme.ColorStyle.Uniform.

This value can be overridden by setting Abstract3DSeries.baseGradient explicitly in the series.


borderColors : list<color>

The list of border colors to be used for all the objects in the graph, series by series.

If there are more series than colors, the color list wraps and starts again with the first color in the list.

Has no immediate effect if colorStyle is not Uniform.


colorScheme : QGraphsTheme::ColorScheme

The color scheme of the graph in use.

See also QGraphsTheme::ColorScheme.


colorStyle : GraphsTheme.ColorStyle

The style of the graph colors. One of QGraphsTheme::ColorStyle enum values.

This value can be overridden by setting Abstract3DSeries.colorStyle explicitly in the series.

Note: This property does not have an effect in Qt Graphs for 2D.

See also QGraphsTheme::ColorStyle.



gridVisible : bool

Defines whether the grid lines are drawn. This value affects all grid lines. The default value is true.


labelBackgroundColor : color

The color of the label backgrounds. Has no effect if labelBackgroundVisible is false. The default value depends on colorScheme.


labelBackgroundVisible : bool

Defines whether the label is drawn with a background that uses labelBackgroundColor (including alpha), or with a fully transparent background. Labels with a background are drawn to equal sizes per axis based on the longest label, and the text is centered in them. Labels without a background are drawn as is and are left or right aligned based on their position in the graph. The default value is true.


labelBorderVisible : bool

Defines whether label borders are drawn for labels that have a background. Has no effect if labelBackgroundVisible is false. The default value is true.


labelFont : font

Sets the font to be used for labels.


labelTextColor : color

The color of the font used for labels. The default value depends on colorScheme.


labelsVisible : bool

Defines whether labels are drawn at all. If this is false, all other label properties have no effect. The default value is true.


multiHighlightColor : color

The highlight color for selected objects. Used if selectionMode has the GraphsItem3D.SelectionFlag.Row or GraphsItem3D.SelectionFlag.Column flag set. The default value depends on colorScheme.


multiHighlightGradient : Gradient

The highlight gradient for selected objects. Used if selectionMode has the GraphsItem3D.SelectionFlag.Row or GraphsItem3D.SelectionFlag.Column flag set. The default value depends on colorScheme.


plotAreaBackgroundColor : color

The color of the graph plot area background. The default value depends on colorScheme.


plotAreaBackgroundVisible : bool

Defines whether the plot area background is drawn by using the value of plotAreaBackgroundColor. The default value is true.


seriesColors : list<color>

The list of base colors to be used for all the objects in the graph, series by series. If there are more series than colors, color list wraps and starts again with the first color in the list. Has no immediate effect if colorStyle is not GraphsTheme.ColorStyle.Uniform.

This can be overridden by setting Abstract3DSeries.baseColor explicitly in the series.


singleHighlightColor : color

The highlight color for a selected object. Used if selectionMode has the GraphsItem3D.SelectionFlag.Item flag set. The default value depends on colorScheme.


singleHighlightGradient : Gradient

The highlight gradient for a selected object. Used if selectionMode has the GraphsItem3D.SelectionFlag.Item flag set. The default value depends on colorScheme.


theme : GraphsTheme.Theme

The type of the theme. If no type is set, the type is GraphsTheme.Theme.QtGreen. Changing the theme type after the item has been constructed will change all other properties of the theme to what the predefined theme specifies. Changing the theme type of the active theme of the graph will also reset all attached series to use the new theme.