Принудительная дата оси в Kendo Dataviz, чтобы иметь все значения

Я делаю диаграмму с помощью Кендо и столкнулся с проблемой.

Я получаю загрузку данных и передаю их на диаграмму, данные имеют дату и значение, и мой js выглядит так:

chart.kendoChart({
                 title: {
                     text: "title"
                 },
                 seriesDefaults: {
                     type: "line"
                 },
                 dataSource: {
                     data: []
                 },
                 series: [{
                     name: "Value",
                     field: "value"
                 }]
                 categoryAxis: [{
                     type: "date",
                     field: "date",
                     baseUnit: "months",
                     min: "2013-07-22T00:00:00",
                     max: "2014-07-22T00:00:00"
                 }]
             });

Проблема в том, что если данные не возвращаются (т.е. пустой массив, как указано выше), я все равно хотел бы видеть метки даты месяца внизу, но там ничего нет (все еще есть метки значений по умолчанию вверх по оси Y ).

Я просмотрел документацию по кендо и не нашел там ничего, равно как и подобных вопросов в stackoverflow. Кто-нибудь может помочь? Дайте мне знать в комментариях, если мне нужно что-то уточнить/предоставить. Спасибо.


person Valuk    schedule 22.07.2014    source источник
comment
Обычно диаграммы заполняются нулевыми значениями. Они могут не отображать линию или полосу, но метки осей будут отображаться. Можно ли заполнить пустой массив нулями?   -  person Ross Bush    schedule 23.07.2014


Ответы (1)


Заполнение ваших данных нулевыми значениями для месяцев, в которых нет данных, может решить вашу проблему.

См. этот Fiddle в качестве примера:

Также см. пример кода ниже:

var _data=[{"weight":200,"createddate":"1/1/2014"},
       {"weight":200,"createddate":"2/1/2014"},
       {"weight":200,"createddate":"3/1/2014"},
       {"weight":149.91,"createddate":"4/1/2014"},
       {"weight":null,"createddate":"5/1/2014"},
       {"weight":null,"createddate":"6/1/2014"},
      {"weight":null,"createddate":"7/1/2014"},
      {"weight":null,"createddate":"8/1/2014"},
      {"weight":null,"createddate":"9/1/2014"},
      {"weight":null,"createddate":"10/1/2014"},
      {"weight":null,"createddate":"11/1/2014"},
      {"weight":null,"createddate":"12/1/2014"}]

        $("#kk").kendoChart({
            dataSource: {
                data:_data
            },
            seriesColors: ["Red"],                
            seriesDefaults: {
                type: "column",
            },
            series: [{
                name: "weight",
                field: "weight",
                categoryField: "createddate",
            }],
            categoryAxis: {
                type: "date",
                baseUnit: "months"
            }                        
        });
person Nitin Mall    schedule 28.08.2014