Javascript Chart.js-使用JSON数据创建时间序列频率图

Javascript Chart.js-使用JSON数据创建时间序列频率图,javascript,web,chart.js,Javascript,Web,Chart.js,因此,最近我一直在开发一个web应用程序,该应用程序从请求中收集数据,并尝试将数据输出到基于每小时/月频率等的图表中 所以,我使用Chart.js,并有日期的JSON数据,我试图制作一个图表,显示每小时请求的频率,等等 我的数据是每个请求都有一个时间戳,所以我只有一堆2018-01-03 15:15:04格式的时间戳。例如: {'2018-01-03 15:15:04',2018-01-04 06:32:45',2018-01-04 23:32:45',2018-02-23 01:24:32'

因此,最近我一直在开发一个web应用程序,该应用程序从请求中收集数据,并尝试将数据输出到基于每小时/月频率等的图表中

所以,我使用Chart.js,并有日期的JSON数据,我试图制作一个图表,显示每小时请求的频率,等等

我的数据是每个请求都有一个时间戳,所以我只有一堆
2018-01-03 15:15:04
格式的时间戳。例如:

{'2018-01-03 15:15:04',2018-01-04 06:32:45',2018-01-04 23:32:45',2018-02-23 01:24:32'

除了,我有几百个。我想要的是每小时、每月等的频率

谁能给我指出正确的方向吗?我的两个想法是:

  • 我自己做计数和分析,计算出每小时的计数,然后把数据扔到图表上
  • 以某种方式使用它们的内置功能来节省时间,即使在阅读了文档之后,我仍然有点不清楚这一点
  • 谢谢大家

    下面是我想要的一个例子:

    而且,选择名单上的#1是你最好的选择。我写了一个例子,说明了如何很容易地做到这一点

    首先找到频率(我是按月/年进行的),并将其添加到。我使用映射是因为映射的
    .keys()
    .values()
    函数是按插入顺序返回的。常规对象不能保证秩序

    然后,Chart.js可以非常轻松地显示这些值,使用它们可以将
    .keys()
    .values()
    迭代器转换为数组

    var a=['2018-01-03 15:15:04','2018-01-04 06:32:45','2018-01-04 23:32:45','2018-02-23 01:24:32','2018-02-23 04:33:12','2018-03-23 05:33:12','2018-03-22 08:33:12','2018-04-27 01:33:12'];
    var freqMap=新映射();
    a、 forEach(函数(时间){
    var日期=新日期(时间);
    var monthName=date.tolocalesting(“en us”{
    月份:“短”
    });
    var key=monthName+“-”+date.getFullYear();
    var count=freqMap.get(key)| 0;
    freqMap.set(键+计数);
    });
    var ctx=document.getElementById(“myChart”).getContext(“2d”);
    var myLineChart=新图表(ctx{
    键入:“行”,
    数据:{
    标签:[…freqMap.keys()],
    数据集:[{
    标签:'每月请求',
    数据:[…freqMap.values()]
    }],
    },
    选项:{
    要素:{
    行:{
    张力:0
    }
    },
    比例:{
    雅克斯:[{
    滴答声:{
    贝吉纳泽罗:是的,
    步长:1
    }
    }]
    }
    }
    });
    
    
    
    Wow,这看起来很管用。非常感谢你的回复,太棒了!没问题!如果它解决了你的问题,请随意接受它作为答案。就这么做了。非常感谢安德鲁:)