How to plot this series in QML ChartView
-
Hello, this code makes some series. I have connected it as an object to QML main file. I want to plot it in ChartView already made there. There is only XYPoint in documentation. How can I Plot this series.
Code that generates series:auto series = new QLineSeries; for (int i = 0; i < 500; i++) { QPointF p((qreal) i, qSin(M_PI / 50 * i) * 100); p.ry() += QRandomGenerator::global()->bounded(20); *series << p; } qmlRegisterSingletonInstance ("com.data.chart",1,0,"myData",series);Main QML:
import QtQuick import QtCharts import com.data.chart Window { width: 640 height: 480 visible: true title: qsTr("Hello World") ChartView { title: "Line Chart" anchors.fill: parent antialiasing: true backgroundRoundness: 50 backgroundColor: "black" LineSeries { // Hello Help Please } } }Main.cpp ... #include <QApplication> #include <QQmlApplicationEngine> #include <QObject> #include <QPointF> #include <QtMath> #include <QRandomGenerator> #include <QQmlEngine> int main(int argc, char *argv[]) { QApplication app(argc, argv); QQmlApplicationEngine engine; const QUrl url(u"qrc:/chart/main.qml"_qs); QObject::connect( &engine, &QQmlApplicationEngine::objectCreated, &app, [url](QObject *obj, const QUrl &objUrl) { if (!obj && url == objUrl) QCoreApplication::exit(-1); }, Qt::QueuedConnection); engine.load(url); auto series = new QLineSeries; for (int i = 0; i < 500; i++) { QPointF p((qreal) i, qSin(M_PI / 50 * i) * 100); p.ry() += QRandomGenerator::global()->bounded(20); *series << p; } qmlRegisterSingletonInstance ("com.data.chart",1,0,"myData",series); return app.exec(); }