【问题标题】:unable to read data from a CSV file using javascript无法使用 javascript 从 CSV 文件中读取数据
【发布时间】:2014-06-25 17:45:54
【问题描述】:

我正在尝试使用 javacsript 从 csv 文件中读取数据,无论我进行什么更改,html 文件都显示为空白。有人可以指导我我做错了什么。我从互联网上搜索了基本代码,但即使这样也行不通。任何帮助将不胜感激,让我的生活更轻松:)..这是代码:

<!DOCTYPE html>
<html>
<body>
<script type="text/javascript" src="http://d3js.org/d3.v3.min.js"></script>
<div id="container"></div>
<script type="text/javascript">
var dataset = []
d3.csv("data.csv", function(data) {
   dataset = data.map(function(d) { return [ +d["max_i"], +d["min_i"] ]; });
   console.log(dataset)
});
</script>


</body>
</html>

csv文件如下:

max_i,min_i,max_f,min_f
-122.1430195,-122.1430195,-122.415278,37.778643
-122.1430195,-122.1430195,-122.40815,37.785034
-122.4194155,-122.4194155,-122.4330827,37.7851673
-122.4194155,-122.4194155,-122.4330827,37.7851673
-118.4911912,-118.4911912,-118.3672828,33.9164666
-121.8374777,-121.8374777,-121.8498415,39.7241178
-115.172816,-115.172816,-115.078011,36.1586877
-82.5618186,-82.5618186,-79.2274115,37.9308282
-79.9958864,-79.9958864,-80.260396,40.1787544
-74.1243063,-74.1243063,-74.040948,40.729688
-106.609991,-106.609991,-106.015897,35.640949

【问题讨论】:

  • 您是否收到错误消息?您使用的是 Chrome(如果是,请尝试其他浏览器)?
  • 根本没有错误信息,只是一个空白页。在 IE 和 Mozilla 上试过
  • 你看Firefox web console了吗?看起来您脚本的所有输出都将发送到控制台(因此该页面实际上应该是空白的)。
  • 哦,我不知道,我马上去看看,告诉你
  • 我没有看到任何可以更新 html 的代码。您所做的只是将 CSV 读入内存。

标签: javascript html csv d3.js


【解决方案1】:

将数据输出到表格中:

<!DOCTYPE html>
<html>
<body>
<script type="text/javascript" src="http://d3js.org/d3.v3.min.js"></script>
<!-- JQuery import -->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js" ></script>
<div id="container"></div>
<script type="text/javascript">
var dataset = [];
d3.csv("data.csv", function(data) {
   dataset = data.map(function(d) { return [ +d["max_i"], +d["min_i"] ]; });

   // build a string using html table
   var tableString = "<table border=1>\
                        <thead>\
                            <tr> <td> max_i </td> <td> min_i </td> </tr>\
                        </thead>\
                        <tbody>";
   for (var i = 0; i < dataset.length; i++) {
        tableString += "<tr>";
        tableString += "<td>" + dataset[i][0] + "</td><td>" + dataset[i][1];
        tableString += "</tr>";
   };
   tableString += "</tbody></table>";

   $('#container').html(tableString);
});
</script>


</body>
</html>

【讨论】:

  • @haakym..非常感谢:)....我最终想将 csv 文件中的数据存储到 html 表中,但这似乎还有很长的路要走,因为我无法显示来自目前是一个 csv 文件:/... 我尝试了您在上面发送的代码,但它仍然给出一个空白输出,假设我现在忽略 d3 部分,您将如何在 jquery 中显示从 csv 文件读取的数据?
  • 不用担心,很乐意为您提供帮助。 HTML表应该是小菜一碟,我现在更新我的答案,我想我知道为什么它不起作用了,因为我链接到了本地的jquery副本。
  • 更新了答案,希望对您有所帮助。如果遇到错误,请使用 chrome (f12) 中的 javascript 调试器或 firebug 对 firefox 有好处。
  • 仍然空白:/...您能告诉我“jquery 的本地副本”是什么意思吗?...我可能问的是非常基本的问题,但我对所有问题都感到困惑javascript中使用的api:/
  • 在 chrome 中打开时出现以下错误:
猜你喜欢
  • 2017-03-30
  • 1970-01-01
  • 1970-01-01
  • 2011-11-17
  • 2022-11-16
  • 2021-11-30
  • 1970-01-01
  • 2012-09-13
相关资源
最近更新 更多