диаграмма рассеяния c3 (v4) с двумя наборами данных - PullRequest
0 голосов
/ 15 мая 2018

У меня есть следующий CSV-файл для построения двух разных наборов данных: нормальных и глобальных с соответствующей регрессией.

Access grade global,Grade_global,Regression_global,Access grade,Grade,Regression
11.48,6.0,5.66,11.48,6.0,5.74
11.43,5.6,5.63,11.43,5.6,5.69
12.13,5.9,6.16,12.13,5.9,6.55
10.48,5.0,4.91,10.48,5.0,4.52
10.54,4.7,4.96,10.54,4.7,4.6
10.23,5.1,4.73,10.23,5.1,4.22
12.27,5.5,6.26,12.27,5.5,6.71
11.13,4.2,5.4,11.13,4.2,5.32
13.7,10.0,7.34,13.7,10.0,8.46

Я хочу создать точечную диаграмму со всеми точками, каждая группа в своем цвете и с соответствующими линейными регрессиями (точки регрессии уже рассчитаны).Я пытаюсь присвоить «Access grade global» и «Access grade» в качестве значений x как «Grade» / «Grade_global», так и «Regression» / «Regression_global»

Как я могу это сделать?Мой фактический код:

var chart = c3.generate({
    bindto: '#chart0',
    data: {
        url: '../static/CSV/Chart_data/grades_access_hs.csv?rnd='+(new Date).getTime(),
        xs: {
            Grade_global: 'Access grade global',
            Grade: 'Access grade'
        },
        type: 'scatter',
        types: {
            Regression_global: "line",
            Regression: 'line'
        },
    },
    axis: {
        y: {
        label: {
            text: "Average grade",
            position: "outer-middle"
        },
        min: 1,
        max: 9
        },
        x: {
        label: {
            text: "Access grade PAU",
            position: "outer-center"
        },
        min: 9,
        max: 14
        }
    },
    size: {
        height: 400,
        width: 800
    },
    zoom: {
        enabled: true
    },
    legend: {
        show: true,
        position: 'inset',
        inset: {
        anchor: 'top-right',
        x: 20,
        y: 300,
        step: 1
        }
    },
})

Я получаю ошибку: Uncaught Error: x не определен для для id = "Regression_global".

Спасибо!

1 Ответ

0 голосов
/ 15 мая 2018

Вы определяете свой x неправильно. Ссылаясь на этот пример , конструктор диаграммы использует xs.

В вашем графике, определив xs следующим образом:

....
data: {
    url: '../static/CSV/Chart_data/grades_access_hs.csv?rnd='+(new Date).getTime(),
    xs: {
        'Access grade global': 'Access grade',
        'Calculus I global': 'Calculus I',
    },
    type: 'scatter'
},
....

должно работать.

Plunker

...