Как создать QChart.js Line Chart - PullRequest
       18

Как создать QChart.js Line Chart

0 голосов
/ 13 февраля 2019

Я могу заставить QChart.js работать с круговыми диаграммами без проблем (а также с полярными и кольцевыми диаграммами), но всякий раз, когда я пытаюсь создать линейную диаграмму (а также радар игистограммы) Я получаю следующую ошибку:

TypeError: Cannot read property 'length' of undefined

Рабочий код для круговых диаграмм выглядит следующим образом:

Chart {
    id: chart_line
    Layout.fillHeight: true
    Layout.fillWidth: true
    chartType: Charts.ChartType.PIE

    chartData: [
        {value: 15, color: "#6AA84F"},
        {value:  3, color: "#DC3912"},
        {value:  5, color: "#FF9900"}]
}

Нерабочий код для линейных диаграмм выглядит следующим образом:

Chart {
    id: chart_line
    Layout.fillHeight: true
    Layout.fillWidth: true
    chartType: Charts.ChartType.LINE

    chartData: [
        {labels: ["January","February","March","April","May","June","July"],
         datasets: [{ data: [65,59,90,81,56,55,40]} ] }
    ]
}

Насколько я понимаю, я не загружаюсь в chartData должным образом.Все диаграммы, с которыми у меня возникают проблемы, используют списки в своих объявлениях в QChartGallery.js .Я не особенно знаком с JavaScript, и мне кажется, что мой синтаксис отключен, и я не могу найти документацию для уточнения.

1 Ответ

0 голосов
/ 13 февраля 2019

Понял, оказалось, что решение было примерно таким же глупым, как я думал.Для таких диаграмм вам необходимо обновить chartData на Component.onCompleted.Итак, рабочий пример кода для тех, кто в будущем столкнется с этой проблемой, выглядит следующим образом:

Chart {
    id: chart_line
    Layout.fillHeight: true
    Layout.fillWidth: true
    chartType: Charts.ChartType.LINE

    Component.onCompleted: {
        chartData = {
            labels: ["January","February","March","April","May","June","July"],
            datasets: [{
                    data: [65,59,90,81,56,55,40]
                }]
        }
    }
}
...