Почему по умолчанию временная шкала объекта Keen.io использует один день?

Быстрый вопрос здесь, надеюсь. Я набросал небольшой документ, который строит диаграмму для заданного "defined_range". Я установил значение 10. Я также строю график для «дневных» интервалов. Из-за всего этого и того факта, что я использую «this_10_days» в качестве временных рамок, я должен видеть данные за последние 10 дней для каждого дня.

Как вы можете видеть (jsfiddle.net/L1j08tr7/1/), по умолчанию для объекта установлено значение 31 декабря. Очевидно, я что-то здесь упускаю. Любая помощь в решении этой проблемы будет приветствоваться, поскольку я не могу найти ничего, указывающего на этот тип поведения в их документации (https://keen.io/docs/data-analysis/timeframe/)

Другим подходом может быть передача дат каждому событию: jsfiddle.net/L1j08tr7/2/

Изменить: конкретные дни указаны здесь: sfiddle.net/qarxnxk1/2/


person Jadissa    schedule 18.09.2014    source источник


Ответы (2)


Поскольку дата начала одинакова каждый раз, когда вы генерируете свои случайные данные, она будет отображаться на графике в один и тот же день. Я просто добавил одну строку для изменения даты начала каждый раз, когда вы создаете новые данные (строка 26): date_begin.setDate(i),

for (i = 0; i < days; i++)
    {  
        date_begin.setDate(i);
        chart_data.push({
            "value": genValue(),
            "interval":interval,
            "timeframe":
            {
                "start":date_begin.toISOString().replace('Z','') + timezone_offset,
                "end":date_end.toISOString().replace('Z','') + timezone_offset
            }
        });
    }

и я думаю, что это должно дать вам то, что вы ищете. Вот мой результат: http://jsfiddle.net/qarxnxk1/

person user4056397    schedule 18.09.2014
comment
Благодарю вас! Я смог взять эту информацию и наметить конкретные дни. Я обновляю свой оригинальный пост - person Jadissa; 19.09.2014

Keen IO предлагает пользователям возможность создавать запросы и интересные визуализации на их основе.

Проверьте это: http://jsfiddle.net/qarxnxk1/3/

var query = new Keen.Query("count", {
    eventCollection: "new_high_score2",
    groupBy: "best_score"
  });
client.draw(query, document.getElementById("chart"), {
    // Custom configuration here
});

Вам не нужно создавать таймфрейм самостоятельно. Кин позаботится об этом за вас. Это просто упрощенная версия того, что вы ищете, но вы также можете сделать что-то вроде:

var series = new Keen.Query("count", {
  eventCollection: "page views",
  timeframe: {
    start: "2014-05-04T00:00:00.000Z",
    end: "2014-05-05T00:00:00.000Z"
  },
  interval: "daily"
});

Если вам нужны дополнительные примеры запросов, ознакомьтесь с этим репозиторием: https://github.com/keenlabs/dashboards

Надеюсь это поможет.

person Sean    schedule 29.09.2014