javascript - 在 Javascript/Google 图表中处理来自 Excel 的大量输入数据的最佳方法

标签 javascript charts google-visualization visualization data-visualization

我正在学习使用 Google Charts API 来处理来自 UNODOC statistics 的数据。 我发现this Excel 文件提供了 2000-2013 年世界各国凶杀案计数和比率的信息。

我使用 Google Charts 创建了一个面积折线图,显示美国的凶杀案计数和比率。 这是完整的code 。如您所见,我仅显示来自美国的数据,并将数据硬编码到 var data/var data1options/options1 变量直接放入 JavaScript 文件中。

var data = google.visualization.arrayToDataTable([
    ['Year', 'Rate'],
        ['2000' , 5.5],  
        ['2001' , 6.6],
        ['2002' , 5.6],
        ['2003' , 5.6],
        ['2004' , 5.5],
        ['2005' , 5.6],
        ['2006' , 5.8],
        ['2007' , 5.6],
        ['2008' , 5.4],
        ['2009' , 5.0],
        ['2010' , 4.7],
        ['2011' , 4.7],
        ['2012' , 4.7],
        ['2013' , 3.8],
    ]);

var data1 = google.visualization.arrayToDataTable([
        ['Year', 'Homocide count'],
            ['2000' , 15586],
            ['2001' , 19033],
            ['2002' , 16229],
            ['2003' , 16528],
            ['2004' , 16148],
            ['2005' , 16740],
            ['2006' , 17309],
            ['2007' , 17128],
            ['2008' , 16465],
            ['2009' , 15399],
            ['2010' , 14722],
            ['2011' , 14661],
            ['2012' , 14827],
            ['2013' , 12253],
      ]);

首先,我认为这不太好,尤其是当我想输入 Excel 文件中包含的所有国家/地区的数据时。

加载所有数据的最佳方法是什么,而不需要将所有数据从 .xls 文件手动复制粘贴到 JavaScript 代码中?

最佳答案

可以先把xls转成csv吗?如果是这样,我倾向于使用 d3.csv() 函数。

d3.csv('file.csv', function(murderData){
    chart here using murderData
})

加载您的图表/ map 作为回调。 M Bostock有the medicine

EG CSV -

Year,Make,Model,Length
1997,Ford,E350,2.34
2000,Mercury,Cougar,2.38

返回

[
  {"Year": "1997", "Make": "Ford", "Model": "E350", "Length": "2.34"},
  {"Year": "2000", "Make": "Mercury", "Model": "Cougar", "Length": "2.38"}
]

关于javascript - 在 Javascript/Google 图表中处理来自 Excel 的大量输入数据的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33212177/

相关文章:

javascript - 使div平滑展开

javascript - 向下钻取热图图表

jquery - ASP.NET 中的交互式仪表板

javascript - 谷歌图表加载错误

javascript - 为什么我使用位图缓冲区在索引和 x,y 之间转换的算法会导致图像垂直翻转?

javascript - Javascript 处理的 draw() 函数

javascript - 动态隐藏 ExtJS Fieldset 中的控件

javascript - 使用 chartjs-plugin-zoom 将缩放事件处理程序添加到 chartjs 的图表

javascript - 谷歌图表日历的 getimageuri() 替代方案

javascript - Google Chart API 缺乏数据和注释