Линейная шкала Chart.js xAxis: странное поведение

Я пытаюсь использовать линейную шкалу по оси X в моей диаграмме chart.js. Я добавляю некоторый код, потому что stackoverflow делает его обязательным при добавлении URL-адреса jsfiddle, но я не вижу смысла:

var options={
    scales:{
    xAxes:[{ type: "linear"}]
  }
};

Я получаю очень странную диаграмму (вторая): http://jsfiddle.net/t0krmau8/

На первой диаграмме я хотел бы получить больше места между 2 и 4 (в 2 раза больше места, чем между 1 и 2), поэтому я использую линейную шкалу.

Я неправильно использую линейную шкалу? Или я должен использовать что-то еще?

Спасибо


person jaudo    schedule 22.12.2016    source источник


Ответы (1)


Вы не предоставляете данные в правильном формате для графика scatter line.

Правильный формат предоставления данных описан в следующем примере из Chart.js Docs.

var scatterChart = new Chart(ctx/* your canvas context*/, {
 type: 'line',
    data: {
        datasets: [{
            label: 'Scatter Dataset',
            data: [{
                x: -10,
                y: 0
            }, {
                x: 0,
                y: 10
            }, {
                x: 10,
                y: 5
            }]
        }]
    },
    options: {
        scales: {
            xAxes: [{
                type: 'linear',
                position: 'bottom'
            }]
        }
    }
});

источник

Я думаю, что x и y должны быть разделены на разные массивы, но вы всегда можете сделать шаг объединения и объединить их в объекты.

person Minato    schedule 22.12.2016
comment
Спасибо, я не туда смотрел. Я определенно ненавижу документацию Chart.js - person jaudo; 22.12.2016
comment
Спасибо за этот ответ. это помогло мне после того, как я потратил несколько часов, пытаясь понять, где был мой график. - person Simon; 03.05.2018