d3-fetch

此方法对Fetch进行了封装,加载一个纯文本文件:

d3.text("/path/to/file.txt").then(function(text) {
  console.log(text); // Hello, world!
});

加载并解析一个CSV文件:

d3.csv("/path/to/file.csv").then(function(data) {
  console.log(data); // [{"Hello": "world"}, …]
});

此模块支持解析JSONCSVTSV文件。你可以使用d3.text直接解析其他格式的文件。(此模块代替了d3-request)

Installing

如果你使用npm,请键入npm install d3-fetch。否则,请下载最新版本。你也可以直接从d3js.org加载,作为standalone library(独立库)或D3 4.0的一部分来使用。支持AMD,CommonJS和vanilla环境。在vanilla环境下,会输出一个全局的d3

<script src="https://d3js.org/d3-dsv.v1.min.js"></script>
<script src="https://d3js.org/d3-fetch.v1.min.js"></script>
<script>

d3.csv("/path/to/file.csv").then(function(data) {
  console.log(data); // [{"Hello": "world"}, …]
});

</script>

API Reference

d3.blob(input[, init])

从给定的input(URL)处获取二进制文件并转换为一个Blob对象如果指定了init,它将被传入底层的fetch;另请参阅RequestInit查看允许的字段。

d3.buffer(input[, init])

从给定的input(URL)处获取二进制文件并转换为一个ArrayBuffer对象。如果指定了init,它将被传入底层的fetch;另请参阅RequestInit查看允许的字段。

d3.csv(input[, init][, row])

相当于d3.dsv用逗号作为分隔符。

d3.dsv(input[, init][, row])

从给定的input(URL)处获取DSV文件。如果指定了init,它将被传入底层的fetch;另请参阅RequestInit查看允许的字段。可以指定row转换函数对row对象进行映射和filter过滤以得到更具体的表现形式。另请参阅dsv.parse了解更多。例如:

d3.dsv(",", "test.csv", function(d) {
  return {
    year: new Date(+d.Year, 0, 1), // convert "Year" column to Date
    make: d.Make,
    model: d.Model,
    length: +d.Length // convert "Length" column to number
  };
}).then(function(data) {
  console.log(data);
});

如果仅指定了initrow中的一个,且为函数,它将被看做是row转换函数,否则它会被看做是init对象。

另请参阅d3.csvd3.tsv

d3.html(input[, init])

从给定的input(URL)处以文本形式获取文件,然后将其解析成HTML。如果指定了init,它将被传入底层的fetch;另请参阅RequestInit查看允许的字段。

d3.image(input[, init])

从给定的input(URL)处获取图像文件。如果指定了init,则会在加载文件前为图像设置附加属性。例如:允许匿名cross-origin request(跨源请求)

d3.image("https://example.com/test.png", {crossOrigin: "anonymous"}).then(function(img) {
  console.log(img);
});

d3.json(input[, init])

从给定的input(URL)处获取JSON文件。如果指定了init,它将被传入fetch;另请参阅RequestInit查看允许的字段。

d3.text(input[, init])

从给定的input(URL)处获取文本文件。如果指定了init,它将被传入fetch;另请参阅RequestInit查看允许的字段。

d3.tsv(input[, init][, row])

相当于d3.dsv用tab character(制表符)作为分隔符。

d3.xml(input[, init])

从给定的input(URL)处以文本形式获取文件,然后将其解析成XML。如果指定了init,它将被传入底层的fetch;另请参阅RequestInit查看允许的字段。

results matching ""

    No results matching ""