D3.js - 分隔值 API

分隔符是一个或多个字符的序列,用于指定纯文本或其他数据中单独的独立区域之间的边界。字段分隔符是逗号分隔值的序列。好吧,分隔符分隔值是逗号分隔值 (CSV)或制表符分隔值 (TSV)。本章详细介绍了分隔符分隔值。

配置 API

我们可以使用以下语法轻松加载 API。

<script src = "https://d3js.org/d3-dsv.v1.min.js"></script>
<script>
   var data = d3.csvParse(string);
</script>

API 方法

以下是分隔符分隔值的各种 API 方法。

  • d3.csvParse(string[, row])
  • d3.csvParseRows(string[, row])
  • d3.csvFormat(rows[, columns])
  • d3.csvFormatRows(rows)
  • d3.tsvParse(string[, row])
  • d3.tsvParseRows(string[, row])
  • d3.tsvFormat(rows[, columns])
  • d3.tsvFormatRows(rows)

让我们详细介绍这些 API 方法。

d3.csvParse(string[, row])

此方法用于解析 csv 格式。考虑下面显示的文件 data.csv

year,population
2006,40
2008,45
2010,48
2012,51
2014,53
2016,57
2017,62

现在,我们可以应用上面给出的功能。

示例 - 让我们考虑以下示例。

var data = d3.csvParse(string, function(d) {
   return {
      year: new Date(+d.Year, 0, 1), // lowercase and convert "Year" to Date
      population: d.population
   };
});

在这里,它在分隔符分隔值中解析指定的字符串。它返回一个表示已解析行的对象数组。

d3.csvParseRows(string[, row])

此方法用于解析与行等效的 csv 格式。

var data = d3.csvParseRows(string, function(d, i) {
   return {
      year: new Date(+d[0], 0, 1), // convert first colum column to Date
      population: d[1],
   };
});

它解析 csv 文件中的每一行。

d3.csvFormat(rows[, columns])

此方法用于格式化 csv 行和列。

示例 - 让我们考虑以下示例。

var string = d3.csvFormat(data, ["year", "population"]);

这里,如果未指定列,则构成标题行的列名列表由行中所有对象的所有属性的并集确定。如果指定了列,则它是表示列名称的字符串数组。

d3.csvFormatRows(rows)

此方法用于格式化 csv 行。

示例 - 让我们考虑以下示例。

var string = d3.csvFormatRows(data.map(function(d, i) {
   return [
      d.year.getFullYear(), // Assuming d.year is a Date object.
      d.population
   ];
}));

在这里,它将指定的字符串行数组格式化为分隔符分隔值,返回一个字符串。

d3.tsvParse(string[, row])

此方法用于解析 tsv 格式。它类似于 csvParse。

d3.tsvParseRows(string[, row])

此方法用于解析等效于行的 tsv 格式。它类似于 csvParseRows 函数。

d3.tsvFormat(rows[, columns])

此方法用于格式化 tsv 行和列。

d3.tsvFormatRows(rows)

此方法用于格式化 tsv 行。