2013-10-10 148 views
0

几天来,我通过Dygraph和网络的其他人试图解决这个问题。我正在以20分钟的间隔记录数月的数据。下面的实施例:Dygraph X轴日期和时间

function data_tempnew() { 
return "" + 
"Date,VWC,TEMP\n" + 
"20130510 14:00,0.25;0.24;0.35,20.5;21.1;20.1\n" + 
. . . 
"20130930 15:40,0.26;0.23;0.30,19.1;18.8;18.5\n" + 
; 
} 

使用下面的HTML:

<script type="text/javascript"> 
    g1 = new Dygraph(
    document.getElementById("noroll"), 
    data_tempnew, 
    { 

     rollperiod: 14, 
     series:{"VWC":{axis:'y2'},}, 
     customBars: false, 
     title: 'Logged Average Soil Temperature and Volumetric Water Content ', 
     ylabel: 'Temperature (C)', 
     y2label: 'Volumetric Water Content', 
     legend: 'always', 
     labelsDivStyles: { 'textAlign': 'right' } 
    }    
); 

我得到不希望的结果,其中仅午夜数据点被贴有连接每个24小时点平行。有点像一个带尖峰的楼梯。所有的分辨率和细节都消失了。

然而,当数据被输入为:

<script type="text/javascript"> 
     g1 = new Dygraph(
      document.getElementById("noroll"), 
      “datatemp.csv”, 
      { . . . 

我得到我想要的结果,大量的分辨率,平稳过渡和细节的负荷。但数字将不再在IE中呈现。另外,使用javascript时,数据量似乎有记录限制。在这里做什么?我需要高分辨率的数据,并在IE中呈现图形。我是一位经验丰富的研究员,但是“剪切和粘贴”业余编码器。我希望你能帮忙。

回答

1

我怀疑这是JavaScript日期/时间字符串解析问题:在第一个示例中,x数据字符串的时间部分被忽略,只有日期部分被解析。 CSV文件中的文本格式是否与第一个示例中的文本完全相同? (并使用文本编辑器,而不是Excel,查看CSV文件!)

我知道Dygraphs包含它自己的日期/时间解析例程,但是在哪种情况下使用哪个解析器,我不确定。但@danvk会知道!

+2

是的,请使用更明智的日期格式(可能是ISO)。这只是在您的日期添加“ - ”,即“2013-05-10 14:00”。支持“20130510”日期格式是我想解决的dygraph中的历史错误。 – danvk