QGraphsTheme Class
QGraphsThemeクラスはグラフのビジュアル・スタイルを提供します。詳細...
Header: | #include <QGraphsTheme> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
qmake: | QT += graphs |
In QML: | GraphsTheme |
Inherits: | QObject and QQmlParserStatus |
- 継承メンバを含む全メンバ一覧
- QGraphsTheme はQt Graphs C++ Common Classes の一部です。
パブリックタイプ
enum class | ColorScheme { Automatic, Light, Dark } |
enum class | ColorStyle { Uniform, ObjectGradient, RangeGradient } |
enum class | Theme { QtGreen, QtGreenNeon, MixSeries, OrangeSeries, YellowSeries, …, UserDefined } |
プロパティ
|
|
パブリック関数
QGraphsLine | axisX() const |
QFont | axisXLabelFont() const |
QGraphsLine | axisY() const |
QFont | axisYLabelFont() const |
QGraphsLine | axisZ() const |
QFont | axisZLabelFont() const |
QColor | backgroundColor() const |
QList<QColor> | borderColors() const |
qreal | borderWidth() const |
QGraphsTheme::ColorScheme | colorScheme() const |
QGraphsTheme::ColorStyle | colorStyle() const |
QGraphsLine | grid() const |
bool | isBackgroundVisible() const |
bool | isGridVisible() const |
bool | isLabelBackgroundVisible() const |
bool | isLabelBorderVisible() const |
bool | isPlotAreaBackgroundVisible() const |
QColor | labelBackgroundColor() const |
QFont | labelFont() const |
QColor | labelTextColor() const |
bool | labelsVisible() const |
QColor | multiHighlightColor() const |
QColor | plotAreaBackgroundColor() const |
QList<QColor> | seriesColors() const |
QList<QLinearGradient> | seriesGradients() const |
void | setAxisX(const QGraphsLine &newAxisX) |
void | setAxisXLabelFont(const QFont &newAxisXLabelFont) |
void | setAxisY(const QGraphsLine &newAxisY) |
void | setAxisYLabelFont(const QFont &newAxisYLabelFont) |
void | setAxisZ(const QGraphsLine &newAxisZ) |
void | setAxisZLabelFont(const QFont &newAxisZLabelFont) |
void | setBackgroundColor(QColor newBackgroundColor) |
void | setBackgroundVisible(bool newBackgroundVisible) |
void | setBorderColors(const QList<QColor> &newBorderColors) |
void | setBorderWidth(qreal newBorderWidth) |
void | setColorScheme(QGraphsTheme::ColorScheme newColorScheme) |
void | setColorStyle(QGraphsTheme::ColorStyle newColorStyle) |
void | setGrid(const QGraphsLine &newGrid) |
void | setGridVisible(bool newGridVisibility) |
void | setLabelBackgroundColor(QColor newLabelBackgroundColor) |
void | setLabelBackgroundVisible(bool newLabelBackgroundVisibility) |
void | setLabelBorderVisible(bool newLabelBorderVisibility) |
void | setLabelFont(const QFont &newFont) |
void | setLabelTextColor(QColor newLabelTextColor) |
void | setLabelsVisible(bool newLabelsVisibility) |
void | setMultiHighlightColor(QColor newMultiHighlightColor) |
void | setPlotAreaBackgroundColor(QColor newBackgroundColor) |
void | setPlotAreaBackgroundVisible(bool newBackgroundVisibility) |
void | setSeriesColors(const QList<QColor> &newSeriesColors) |
void | setSeriesGradients(const QList<QLinearGradient> &newSeriesGradients) |
void | setSingleHighlightColor(QColor newSingleHighlightColor) |
void | setTheme(QGraphsTheme::Theme newTheme, QGraphsTheme::ForceTheme force = ForceTheme::No) |
QColor | singleHighlightColor() const |
QGraphsTheme::Theme | theme() const |
シグナル
void | axisXChanged() |
void | axisXLabelFontChanged() |
void | axisYChanged() |
void | axisYLabelFontChanged() |
void | axisZChanged() |
void | axisZLabelFontChanged() |
void | backgroundColorChanged() |
void | backgroundVisibleChanged() |
void | borderColorsChanged() |
void | borderWidthChanged() |
void | colorSchemeChanged() |
void | colorStyleChanged(QGraphsTheme::ColorStyle type) |
void | gridChanged() |
void | gridVisibleChanged() |
void | labelBackgroundColorChanged() |
void | labelBackgroundVisibleChanged() |
void | labelBorderVisibleChanged() |
void | labelFontChanged() |
void | labelTextColorChanged() |
void | labelsVisibleChanged() |
void | multiHighlightColorChanged(QColor color) |
void | multiHighlightGradientQMLChanged() |
void | plotAreaBackgroundColorChanged() |
void | plotAreaBackgroundVisibleChanged() |
void | seriesColorsChanged(const QList<QColor> &list) |
void | singleHighlightColorChanged(QColor color) |
void | singleHighlightGradientQMLChanged() |
void | themeChanged(QGraphsTheme::Theme theme) |
詳細説明
グラフ全体に影響を与える視覚的なプロパティを指定します。いくつかの組み込みテーマがあり、そのまま使用することも、自由に変更することもできる。
テーマは、UserDefined enum 値を使用してゼロから作成できます。デフォルトのコンストラクタを使用してテーマを作成すると、新しいユーザー定義テーマが生成されます。
テーマのカスタマイズ
デフォルトのテーマはQtGreen ですが、各プロパティをカスタマイズすることが可能です。
次の表は、テーマによって制御されるプロパティと、UserDefined のデフォルト値の一覧です。
プロパティ | デフォルト値 |
---|---|
backgroundVisible | true |
seriesColors | Qt::black |
seriesGradients | QLinearGradient.基本的に真っ黒。 |
colorStyle | 一様。 |
labelFont | QFont |
gridVisible | true |
labelBackgroundVisible | true |
labelBorderVisible | true |
labelsVisible | true |
使用例
何も変更せずに組み込みテーマを作成する:
QGraphsTheme *theme = new QGraphsTheme();
組み込みテーマを作成し、いくつかのプロパティを変更する:
QGraphsTheme *theme = new QGraphsTheme(); theme->setBackgroundVisible(false); theme->setLabelBackgroundVisible(false);
ユーザー定義テーマの修正テーマは前のスニペットと同じように作成されている:
theme->setTheme(QGraphsTheme::Theme::UserDefined); theme->setBackgroundColor(QColor(QRgb(0x99ca53))); theme->setBackgroundVisible(true); QList<QColor> colors = { QColor(QRgb(0x209fdf)) }; theme->setSeriesColors(colors); theme->setColorStyle(QGraphsTheme::ColorStyle::Uniform); theme->setLabelFont(QFont(QStringLiteral("Impact"), 35)); theme->setGridVisible(true); auto gridline = theme->grid(); gridline.setMainColor(QColor(QRgb(0x99ca53))); theme->setGrid(gridline); theme->setLabelBackgroundColor(QColor(0xf6, 0xa6, 0x25, 0xa0)); theme->setLabelBackgroundVisible(true); theme->setLabelBorderVisible(true); theme->setLabelTextColor(QColor(QRgb(0x404044))); theme->setMultiHighlightColor(QColor(QRgb(0x6d5fd5))); theme->setSingleHighlightColor(QColor(QRgb(0xf6a625))); theme->setBackgroundColor(QColor(QRgb(0xffffff)));
テーマがグラフに設定された後、いくつかのプロパティを修正する:
QQuickWidget quickWidget; Q3DBarsWidgetItem bars; bars.setWidget(&quickWidget); bars.widget()->setMinimumSize(QSize(512, 512)); bars.activeTheme()->setTheme(QGraphsTheme::Theme::MixSeries); QList<QColor> color = { QColor(Qt::red) }; bars.activeTheme()->setSeriesColors(color); bars.activeTheme()->setSingleHighlightColor(Qt::yellow);
メンバー型ドキュメント
enum class QGraphsTheme::ColorScheme
グラフの配色を表す。
定数 | 値 | 説明 |
---|---|---|
QGraphsTheme::ColorScheme::Automatic | 0 | 背景色は、利用可能であればプラットフォームの配色に従います。利用できない場合は、ライト外観が使用されます。 |
QGraphsTheme::ColorScheme::Light | 1 | 背景色はテキスト色より明るく、すなわちテーマは明るい。 |
QGraphsTheme::ColorScheme::Dark | 2 | すなわちテー マは暗い。 |
Qt::ColorSchemeも参照 。
enum class QGraphsTheme::ColorStyle
グラデーションの種類。
定数 | 値 | 説明 |
---|---|---|
QGraphsTheme::ColorStyle::Uniform | 0 | オブジェクトは単一色でレンダリングされます。使用される色はseriesColors,singleHighlightColor,multiHighlightColor プロパティで指定されます。 |
QGraphsTheme::ColorStyle::ObjectGradient | 1 | オブジェクトは、オブジェクトの高さに関係なく、各オブジェクトに完全なグラデーションを使用して着色されます。使用されるグラデーションはseriesGradients,singleHighlightGradient およびmultiHighlightGradient プロパティで指定されます。 |
QGraphsTheme::ColorStyle::RangeGradient | 2 | オブジェクトは、オブジェクトの高さとY軸上の位置によって決まる完全なグラデーションの一部を使用して着色されます。使用されるグラデーションはseriesGradients,singleHighlightGradient,multiHighlightGradient プロパティで指定されます。 |
enum class QGraphsTheme::Theme
組み込みテーマ。
定数 | 値 | 説明 |
---|---|---|
QGraphsTheme::Theme::QtGreen | 0 | 緑を基調とした明るいテーマ。 |
QGraphsTheme::Theme::QtGreenNeon | 1 | 緑色のネオンを基調とした明るいテーマ。 |
QGraphsTheme::Theme::MixSeries | 2 | 様々な色が混ざったテーマ。 |
QGraphsTheme::Theme::OrangeSeries | 3 | オレンジを基調としたテーマ。 |
QGraphsTheme::Theme::YellowSeries | 4 | 黄色を基調としたテーマ。 |
QGraphsTheme::Theme::BlueSeries | 5 | ブルーを基調としたテーマ。 |
QGraphsTheme::Theme::PurpleSeries | 6 | 紫を基調としたテーマ。 |
QGraphsTheme::Theme::GreySeries | 7 | グレーを基調としたテーマ。 |
QGraphsTheme::Theme::UserDefined | 8 | ユーザー定義のテーマ。詳細については、Customizing Theme を参照してください。 |
プロパティ Documentation
axisXLabelFont : QFont
このプロパティは、x軸のラベルに使用されるフォントを保持する。
アクセス関数:
QFont | axisXLabelFont() const |
void | setAxisXLabelFont(const QFont &newAxisXLabelFont) |
通知シグナル:
void | axisXLabelFontChanged() |
axisYLabelFont : QFont
このプロパティは、y軸のラベルに使用されるフォントを保持する。
アクセス関数
QFont | axisYLabelFont() const |
void | setAxisYLabelFont(const QFont &newAxisYLabelFont) |
ノーティファイアシグナル:
void | axisYLabelFontChanged() |
axisZLabelFont : QFont
このプロパティは、z軸のラベルに使用するフォントを保持します。
アクセス関数
QFont | axisZLabelFont() const |
void | setAxisZLabelFont(const QFont &newAxisZLabelFont) |
ノーティファイアシグナル:
void | axisZLabelFontChanged() |
backgroundColor : QColor
このプロパティは、グラフが描画されるビューの色を保持します。デフォルト値はcolorScheme に依存します。
アクセス関数:
QColor | backgroundColor() const |
void | setBackgroundColor(QColor newBackgroundColor) |
アクセス関数:Notifier シグナル:
void | backgroundColorChanged() |
backgroundVisible : bool
このプロパティは、背景が表示されているかどうかを保持します。
背景はbackgroundColor の値を使用して描画されます。 デフォルト値はtrue
です。
アクセス関数:
bool | isBackgroundVisible() const |
void | setBackgroundVisible(bool newBackgroundVisible) |
アクセス関数: Notifier signal: このプロパティは、背景が表示されているかどうかを保持します:
void | backgroundVisibleChanged() |
borderColors : QList<QColor>
このプロパティは、グラフ内のすべてのオブジェクトに使用される境界色のリストを、系列ごとに保持する。
色よりも系列が多い場合、色リストは折り返され、リストの最初の色から再スタートします。
colorStyle が Uniform でない場合は、即座に反映されません。
アクセス関数:
QList<QColor> | borderColors() const |
void | setBorderColors(const QList<QColor> &newBorderColors) |
通知シグナル:
void | borderColorsChanged() |
borderWidth : qreal
デフォルト値は1.0
。
アクセス関数:
qreal | borderWidth() const |
void | setBorderWidth(qreal newBorderWidth) |
アクセス関数: Notifier シグナル: このプロパティは、グラフのボーダーの幅を保持します:
void | borderWidthChanged() |
colorScheme : QGraphsTheme::ColorScheme
使用するグラフの配色。
アクセス関数:
QGraphsTheme::ColorScheme | colorScheme() const |
void | setColorScheme(QGraphsTheme::ColorScheme newColorScheme) |
Notifier シグナル:
void | colorSchemeChanged() |
Qt::ColorSchemeも参照 。
colorStyle : QGraphsTheme::ColorStyle
グラフの色のスタイル。QGraphsTheme::ColorStyle enum値の1つ。
この値は、Abstract3DSeries.colorStyle をシリーズで明示的に設定することでオーバーライドできます。
注意: このプロパティは、Qt Graphs for 2D では効果がありません。
アクセス関数:
QGraphsTheme::ColorStyle | colorStyle() const |
void | setColorStyle(QGraphsTheme::ColorStyle newColorStyle) |
通知シグナル:
void | colorStyleChanged(QGraphsTheme::ColorStyle type) |
QGraphsTheme::ColorStyleも参照してください 。
gridVisible : bool
このプロパティは、グリッド線を描画するかどうかを保持します。
この値はすべてのグリッド線に影響します。デフォルト値はtrue
です。
アクセス関数:
bool | isGridVisible() const |
void | setGridVisible(bool newGridVisibility) |
通知シグナル:
void | gridVisibleChanged() |
labelBackgroundColor : QColor
このプロパティはラベルの背景の色を保持します。
labelBackgroundVisible がfalse
の場合は影響しません。デフォルト値はcolorScheme に依存します。
アクセス関数:
QColor | labelBackgroundColor() const |
void | setLabelBackgroundColor(QColor newLabelBackgroundColor) |
ノーティファイアシグナル:
void | labelBackgroundColorChanged() |
labelBackgroundVisible : bool
このプロパティは、ラベルの背景をカラーで描画するか、完全に透明な背景で描画するかを保持する。
背景の描画にはlabelBackgroundColor の値(アルファ値を含む)が使われます。
背景のあるラベルは、最も長いラベルを基準に、軸ごとに等しい大きさに描かれ、テキストはその中央に配置されます。背景のないラベルはそのまま描画され、グラフ内の位置に応じて左揃えまたは右揃えになります。デフォルト値はtrue
。
アクセス関数:
bool | isLabelBackgroundVisible() const |
void | setLabelBackgroundVisible(bool newLabelBackgroundVisibility) |
通知シグナル:
void | labelBackgroundVisibleChanged() |
labelBorderVisible : bool
このプロパティは、背景を持つラベルに対してラベルの境界線を描画するかどうかを保持します。
labelBackgroundVisible がfalse
の場合、 何の効果も持ちません。デフォルト値はtrue
です。
アクセス関数:
bool | isLabelBorderVisible() const |
void | setLabelBorderVisible(bool newLabelBorderVisibility) |
通知シグナル:
void | labelBorderVisibleChanged() |
labelFont : QFont
このプロパティは、ラベルに使われるフォントを保持します。
アクセス関数:
QFont | labelFont() const |
void | setLabelFont(const QFont &newFont) |
アクセス関数:Notifier signal: このプロパティは、ラベルに使用されるフォントを保持する:
void | labelFontChanged() |
labelTextColor : QColor
このプロパティは、ラベルに使用されるフォントの色を保持する。デフォルト値はcolorScheme に依存する。
アクセス関数:
QColor | labelTextColor() const |
void | setLabelTextColor(QColor newLabelTextColor) |
このプロパティは、ラベルを描画するかどうかを保持します:
void | labelTextColorChanged() |
labelsVisible : bool
このプロパティは、ラベルが全く描画されないかどうかを保持する。
こ れがfalse
の場合、 他のすべての ラ ベルプ ロパテ ィ は効力を持ち ません。デフォルト値はtrue
です。
アクセス関数:
bool | labelsVisible() const |
void | setLabelsVisible(bool newLabelsVisibility) |
ノーティファイアシグナル:
void | labelsVisibleChanged() |
multiHighlightColor : QColor
こ のプ ロパテ ィ は、 選択 さ れたオブジ ェ ク ト のハ イ ラ イ ト 色を保持 し ます。
selectionMode にQtGraphs3D::SelectionFlag::Row
またはQtGraphs3D::SelectionFlag::Column
フラグが設定されている場合に使用されます。デフォルト値はcolorScheme に依存します。
アクセス関数:
QColor | multiHighlightColor() const |
void | setMultiHighlightColor(QColor newMultiHighlightColor) |
ノーティファイアシグナル:
void | multiHighlightColorChanged(QColor color) |
multiHighlightGradient : QQuickGradient* const
このプロパティは、選択されたオブジェクトのハイライトグラデーションを保持する。
selectionMode にQtGraphs3D::SelectionFlag::Row
またはQtGraphs3D::SelectionFlag::Column
フラグが設定されている場合に使用されます。デフォルト値はcolorScheme に依存します。
ノーティファイアシグナル:
void | multiHighlightGradientQMLChanged() |
plotAreaBackgroundColor : QColor
こ のプ ロパテ ィ は、 グ ラ フ プ ロ ッ ト 領域の背景の色を保持 し ます。デフォルト値はcolorScheme に依存します。
アクセス関数:
QColor | plotAreaBackgroundColor() const |
void | setPlotAreaBackgroundColor(QColor newBackgroundColor) |
ノーティファイアシグナル:
void | plotAreaBackgroundColorChanged() |
plotAreaBackgroundVisible : bool
このプロパティは、プロットエリアの背景が表示されているかどうかを保持します。
背景はplotAreaBackgroundColor の値を使用して描画されます。 デフォルト値はtrue
です。
アクセス関数:
bool | isPlotAreaBackgroundVisible() const |
void | setPlotAreaBackgroundVisible(bool newBackgroundVisibility) |
通知シグナル:
void | plotAreaBackgroundVisibleChanged() |
seriesColors : QList<QColor>
このプロパティは、グラフ内のすべてのオブジェクトに使用される基本色のリストを、系列ごとに保持します。
色よりも系列が多い場合、色リストは折り返され、リストの最初の色から再スタートします。
colorStyle が Uniform でない場合は、即座には効果がありません。
この値は、baseColor をシリーズで明示的に設定することで上書きできます。
アクセス関数:
QList<QColor> | seriesColors() const |
void | setSeriesColors(const QList<QColor> &newSeriesColors) |
通知シグナル:
void | seriesColorsChanged(const QList<QColor> &list) |
singleHighlightColor : QColor
このプロパティは、選択されたオブジェクトのハイライト色を保持します。
selectionMode にQtGraphs3D::SelectionFlag::Item
フラグが設定されている場合に使用される。デフォルト値はcolorScheme に依存する。
アクセス関数:
QColor | singleHighlightColor() const |
void | setSingleHighlightColor(QColor newSingleHighlightColor) |
通知シグナル:
void | singleHighlightColorChanged(QColor color) |
singleHighlightGradient : QQuickGradient* const
このプロパティは、選択されたオブジェクトのハイライトグラデーションを保持します。
selectionMode にQtGraphs3D::SelectionFlag::Item
フラグが設定されている場合に使用されます。デフォルト値はcolorScheme に依存します。
通知シグナル:
void | singleHighlightGradientQMLChanged() |
theme : QGraphsTheme::Theme
テーマのタイプ。タイプが設定されていない場合、タイプはGraphsTheme.Theme.QtGreen です。アイテムが構築された後にテーマのタイプを変更すると、テーマの他のすべてのプロパティが、定義済みのテーマが指定するものに変更されます。グラフのアクティブなテーマのテーマ・タイプを変更すると、接続されているすべての系列もリセットされ、新しいテーマが使用されます。
アクセス関数:
QGraphsTheme::Theme | theme() const |
void | setTheme(QGraphsTheme::Theme newTheme, QGraphsTheme::ForceTheme force = ForceTheme::No) |
通知シグナル:
void | themeChanged(QGraphsTheme::Theme theme) |
メンバ関数ドキュメント
QList<QLinearGradient> QGraphsTheme::seriesGradients() const
テーマが使用する系列グラデーションのリストを返す。
setSeriesGradients()も参照 。
void QGraphsTheme::setSeriesGradients(const QList<QLinearGradient> &newSeriesGradients)
テーマのシリーズグラデーションとしてnewSeriesGradients を設定する。
seriesGradients() も参照して ください。
©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。