Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌图表json日期反应_Javascript_Json_Date_Charts - Fatal编程技术网

Javascript 谷歌图表json日期反应

Javascript 谷歌图表json日期反应,javascript,json,date,charts,Javascript,Json,Date,Charts,我一直在尝试使用谷歌图表与反应。它工作得很好,但我已将数据从本地文件移动到mongoDB,这给了我一个日期问题。 使用我的测试数据,我使用新日期(…)在google图表中添加了正确的数据格式。在移动数据之后,我从DB获取的数据是JSON,这给了我一个日期的问题,这些日期只是作为字符串打印在我的图表上 我在google的图表文档中读到,如果我将数据保持在以下顺序“date(2015,3,3)”,它们会自动从JSON字符串重建date对象 我的数据如下所示: { data: [ [ 'Dato

我一直在尝试使用谷歌图表与反应。它工作得很好,但我已将数据从本地文件移动到mongoDB,这给了我一个日期问题。 使用我的测试数据,我使用新日期(…)在google图表中添加了正确的数据格式。在移动数据之后,我从DB获取的数据是JSON,这给了我一个日期的问题,这些日期只是作为字符串打印在我的图表上

我在google的图表文档中读到,如果我将数据保持在以下顺序“date(2015,3,3)”,它们会自动从JSON字符串重建date对象

我的数据如下所示:

{ data: 
  [ [ 'Dato', 'Place1', 'Place2' ],
  [ 'Date(2015-9-2)', 100, 0 ],
  [ 'Date(2015-9-3)', 850, 0 ],
  [ 'Date(2015-9-4)', 1125, 0 ],
  [ 'Date(2015-9-5)', 0, 1900 ] ],
  path: 'Gennemsnitlig liggetid fordelt på kommuner' 
}
在谷歌图表中,它仍然被解释为字符串。我见过其他例子,它们使用行和列。不知道这是不是我的错。下面是Stackoverflow的一个示例:

 {"rows":[{"c":[{"v":"Date(year, month)"},{"v":"2095"}]}],"cols":
[{"type":"datetime","label":"DTU"},{"type":"number","label":"COUNT"}]}
总而言之。使用我的测试数据时,一切都正常。当我从数据库中获取数据时,图形仍然有效。但是我从DB收到的字符串日期并没有被google图表识别为日期

希望得到一些帮助或反馈

问候

马丁

我在谷歌的图表文档上读到,他们会自动重建 来自JSON字符串的日期对象,如果我将数据保存在以下位置 订单“日期(2015年3月3日)”

你在哪里见过这个?无论哪种方式,正确的格式都是

[ new Date('2015-9-2'), 100, 0 ]
i、 e或

您可以清理数据,以便通过以下方式获得图表中显示的正确日期值:

var testData = { data: 
  [ [ 'Dato', 'Place1', 'Place2' ],
  [ 'Date(2015-9-2)', 100, 0 ],
  [ 'Date(2015-9-3)', 850, 0 ],
  [ 'Date(2015-9-4)', 1125, 0 ],
  [ 'Date(2015-9-5)', 0, 1900 ] ],
  path: 'Gennemsnitlig liggetid fordelt på kommuner' 
}    

for (var i=1;i<testData.data.length;i++) {
  testData.data[i][0] = new Date(testData.data[i][0].match(/\(([^)]+)\)/)[1]);
}
var testData={data:
[['Dato','地点1','地点2'],
[‘日期(2015-9-2)’,100,0],
[‘日期(2015-9-3)’,850,0],
[‘日期(2015-9-4)’1125,0],
[‘日期(2015-9-5)’,1900年7月0日]],
路径:“Gennemsnitlig liggetid fordelt påkommuner”
}    
对于(变量i=1;i


客户端中的for循环似乎起到了作用。我现在将纯日期ISO字符串作为JSON发送,并在客户端中执行for循环。然后它就可以工作了。非常感谢您,David。
var testData = { data: 
  [ [ 'Dato', 'Place1', 'Place2' ],
  [ 'Date(2015-9-2)', 100, 0 ],
  [ 'Date(2015-9-3)', 850, 0 ],
  [ 'Date(2015-9-4)', 1125, 0 ],
  [ 'Date(2015-9-5)', 0, 1900 ] ],
  path: 'Gennemsnitlig liggetid fordelt på kommuner' 
}    

for (var i=1;i<testData.data.length;i++) {
  testData.data[i][0] = new Date(testData.data[i][0].match(/\(([^)]+)\)/)[1]);
}