diff options
Diffstat (limited to 'examples/charts/qmlchartsgallery/qml/customlegend/ChartViewHighlighted.qml')
-rw-r--r-- | examples/charts/qmlchartsgallery/qml/customlegend/ChartViewHighlighted.qml | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/examples/charts/qmlchartsgallery/qml/customlegend/ChartViewHighlighted.qml b/examples/charts/qmlchartsgallery/qml/customlegend/ChartViewHighlighted.qml new file mode 100644 index 00000000..f29c944c --- /dev/null +++ b/examples/charts/qmlchartsgallery/qml/customlegend/ChartViewHighlighted.qml @@ -0,0 +1,62 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only + +import QtQuick +import QtCharts + +//![1] +ChartView { + id: chartViewHighlighted + + property variant selectedSeries + + signal clicked + + legend.visible: false + margins.top: 10 + margins.bottom: 0 + antialiasing: true + + LineSeries { + id: lineSeries + + axisX: ValueAxis { + min: 2006 + max: 2012 + labelFormat: "%.0f" + tickCount: 7 + } + axisY: ValueAxis { + id: axisY + titleText: "EUR" + min: 0 + max: 40000 + labelFormat: "%.0f" + tickCount: 5 + } + } +//![1] + + MouseArea { + anchors.fill: parent + onClicked: { + chartViewHighlighted.clicked(); + } + } + + onSelectedSeriesChanged: { + lineSeries.clear(); + lineSeries.color = selectedSeries.color; + var maxVal = 0.0; + for (var i = 0; i < selectedSeries.upperSeries.count; i++) { + var y = selectedSeries.upperSeries.at(i).y - selectedSeries.lowerSeries.at(i).y; + lineSeries.append(selectedSeries.upperSeries.at(i).x, y); + if (maxVal < y) + maxVal = y; + } + chartViewHighlighted.title = selectedSeries.name; + axisY.max = maxVal; + axisY.applyNiceNumbers() + } +} + |