【问题标题】:How to parse dates in highcharts from csv如何从csv解析highcharts中的日期
【发布时间】:2014-07-07 16:37:30
【问题描述】:

我有以下格式的 csv 数据

time_stamp,"Phase 3","Phase 2","Phase 3"
"2014-06-03 07:59:48",24210,22744,26003
"2014-06-04 07:59:49",112603,103417,121368
"2014-06-05 07:59:50",21302,20165,23317
"2014-06-06 07:59:50",21561,20951,23875
"2014-06-07 07:59:03",408,1151,767
"2014-06-08 07:59:04",384,1151,767

我正在使用highcharts 从这些值生成图表。我想将 timestamp 解析为 Highcharts 将处理的格式。我环顾四周,但找不到任何东西。

下面是我的代码 sn-p:

$.get("<?php echo base_url(); ?>uploads/<?php echo $username; ?>"+TimeofDay, function(data) {
        // Split the lines
        var lines = data.split('\n');

        // Iterate over the lines and add categories or series
        $.each(lines, function(lineNo, line) {
            var items = line.split(',');

            // header line containes categories
            if (lineNo == 0) {
                $.each(items, function(itemNo, item) {
                    if (itemNo > 0) {
                     options.series.push({
                              name: item,
                              data: []
                              });
                     }
              });

                } else {
                    $.each(items, function(itemNo, item) {
                        if (itemNo === 0) { 
                            options.xAxis.categories.push(item);
                        } else if (parseFloat(item/1000)) { 
                            options.series[itemNo - 1].data.push(parseFloat(item/1000));
                        } else if (item == "null") { /* adding nulls */
                            options.series[itemNo - 1].data.push(null);
                        }
                    });


                }
            });

任何帮助将不胜感激。我知道我必须将时间戳字符串转换为日期,但我不确定如何。

【问题讨论】:

  • 如果您将日期作为类别推送,则无需将日期解析为时间戳。当您的 xAxis 是日期时间类型时,它是必需的。

标签: javascript datetime charts highcharts timestamp


【解决方案1】:

将代码放在代码中需要进行此转换的适当位置。 您必须将时间戳字符串转换为有效的 JavaScript 日期,例如:

var my_date = "2014-06-03 07:59:48";
my_date = my_date.replace(/-/g, "/"); //here the new date string would be like: 2014/06/03 07:59:48
//alert(my_date);
var javascript_date = new Date(my_date);

【讨论】:

  • 如果您发现任何问题,请告诉我!
  • 让我试一试
  • 如果它适合您,请考虑接受答案!如果您在实施此解决方案时仍然遇到问题,请告诉我。
猜你喜欢
  • 2015-09-01
  • 1970-01-01
  • 2021-02-07
  • 2019-01-24
  • 2013-05-25
  • 2013-07-28
  • 2011-05-01
  • 2018-02-07
  • 1970-01-01
相关资源
最近更新 更多