import QtQuick 2.15 import QtQuick.Window 2.15 import QtCharts 2.15 import QtQuick.Controls 2.15 Window { visible: true width: 640 height: 480 title: qsTr("Hello World") ListModel { id: exampleModel ListElement { label: "A" value: 2.45 } ListElement { label: "B" value: 3.25 } ListElement { label: "C" value: 1.95 } } ChartView { anchors.fill: parent legend.alignment: Qt.AlignBottom antialiasing: true PieSeries { id: examplePieSeries } QtObject { property var model: exampleModel function refreshPieSeries() { examplePieSeries.clear() let modelLenght = model.count for (var i = 0; i < modelLenght; ++i) { console.log("Before append " + i) console.log("Label : " + model.get(i).label) console.log("Value : " + model.get(i).value) var pieslice = examplePieSeries.append(model.get(i).label, model.get(i).value) console.log("After append " + i) } } Component.onCompleted: { refreshPieSeries() } onModelChanged: { refreshPieSeries() } } } }