# @d3fc/d3fc-group 中文文档

规范地址：https://npmcn.com/package/%40d3fc/d3fc-group/

版本：3\.0\.1
npm 元数据更新时间：2022-04-05T02:30:55.027Z
中文译文更新时间：2026-11-11T08:10:28.195Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40d3fc/d3fc-group
原文对照：https://npmcn.com/package/%40d3fc/d3fc-group/?lang=original
项目主页：https://github.com/d3fc/d3fc
源码仓库：https://github.com/d3fc/d3fc

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：18.3 kB，10 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：未声明
- 运行依赖：0 个
- 首次发布：2018-08-02T13:51:00.889Z
- 最新版本发布：2020-07-14T14:28:40.107Z
- 近 30 天下载量：61340（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：13（近 12 个月 0 个）

## 中文简介

用于操控 CSV / TSV 数据的功能,用于渲染分组序列.

## 安装

```sh
npm install @d3fc/d3fc-group
```

也可以使用：`pnpm add @d3fc/d3fc-group`、`yarn add @d3fc/d3fc-group`、`bun add @d3fc/d3fc-group`

## README

# d3fc 组

用于操控 CSV / TSV 数据的功能,用于渲染分组序列.

[主要 D3FC 软件包](https://github.com/d3fc/d3fc)

## 安装

```bash
npm install @d3fc/d3fc-group
```

## API 参考

### API 概况

这个 [d3 - dsv (英语)](https://github.com/d3/d3-dsv) 软件包提供一些用于解析分隔器分隔值的功能,例如逗号分隔(CSV)或分页分隔(TSV). 由于 DSV 输入,这些解析器会产生一系列对象,其属性与列相对应.

例如,使用来自 [此 D3 实例](https://bl.ocks.org/mbostock/3887051),一个简单的 CSV 解析如下:

```javascript
const data = d3.csvParse(
    `State,Under 5 Years,5 to 13 Years
    AL,310,552
    AK,52,85
    AZ,515,828`);
```

形成以下结构:

```javascript
[
   {'State': 'AL', 'Under 5 Years': '310', '5 to 13 Years': '552' },
   {'State': 'AK', 'Under 5 Years': '52', '5 to 13 Years': '85' },
   {'State': 'AZ', 'Under 5 Years': '515', '5 to 13 Years': '828' }
];
```

组分部分采用这个结构,并把它操纵成一个更适合使每行在组图中成为单个序列的形式.

以下是如何将组组件应用于上述产出:

```javascript
const group = fc.group()
  .key('State');
const grouped = group(data);
```

默认的组取向是"垂直",它为每个列创建了"序列",而不是代表键的一列. 以此为例,纵向组如下:

```javascript
[
  [["AL", 310], ["AK", 52], ["AZ", 515]],
  [["AL", 552], ["AK", 85], ["AZ", 828]]
]
```

这种结构与输出非常类似 [d3. 装订](https://github.com/d3/d3-shape#stacks) 并适合渲染成组系列,在此情况下按状态分组.

每个系列的密钥为: _系列_.key和每个点的输入数据元素作为 _点_数据.

```javascript
const group = fc.group()
  .key('State');
const grouped = group(data);
// [
//   [["AL", 310], ["AK", 52], ["AZ", 515]],
//   [["AL", 552], ["AK", 85], ["AZ", 828]]
// ]

// each series has a key property
grouped[0].key // 'Under 5 Years'
grouped[1].key // '5 to 13 Years'

// and each data element has a data property:
grouped[0][0].data //  {'State': 'AL', 'Under 5 Years': '310', '5 to 13 Years': '552' }
```

如以下例子所示,您也可以进行横向分组:

```javascript
const group = fc.group()
  .orient('horizontal')
  .key('State');
const grouped = group(data);
```

它为每行创建一个序列,在这种情况下允许按年龄段分组:

```javascript
[
  [["Under 5 Years", 310], ["5 to 13 Years", 552]],
  [["Under 5 Years", 52 ], ["5 to 13 Years", 85 ]],
  [["Under 5 Years", 515], ["5 to 13 Years", 828]]
]
```

### API 密码

[{\\fn方正粗倩简体\\fs12\\an8\\1cHFFFF00\\b0}](https://npmcn.com/package/%40d3fc/d3fc-group/#readme-group) 页:1.**组**(a) 与《公约》有关的其他事项

构造带有默认设置的新组生成器.

[{\\fn方正粗倩简体\\fs12\\an8\\1cHFFFF00\\b0}](https://npmcn.com/package/%40d3fc/d3fc-group/#readme-group_key) _组_。 。 。 .**键**(单位:千美元)_键值_(中文(简体) )

若为 _键值_ ,设置代表密钥的DSV数据中的列名称。 若为 _键值_ 未指定,返回当前密钥.

[{\\fn方正粗倩简体\\fs12\\an8\\1cHFFFF00\\b0}](https://npmcn.com/package/%40d3fc/d3fc-group/#readme-group_value) _组_。 。 。 .**价值**(单位:千美元)_数值Func_(中文(简体) )

若为 _数值Func_ ,设置用于获取特定行/列值的存取器函数。 若为 _数值Func_ 未指定,返回当前访问器.

每次组组件获得单元格值时,都会引用访问器。 这个 `valueFunc(row, column)` 函数与当前行(由DSV parser提供)和列名一起被引用。 此存取器函数的默认执行将所有单元格值强制变为数字实例 .

[{\\fn方正粗倩简体\\fs12\\an8\\1cHFFFF00\\b0}](https://npmcn.com/package/%40d3fc/d3fc-group/#readme-group_orient) _组_。 。 。 .**东方**(单位:千美元)_方向_(中文(简体) )

若为 _方向_ 指定组合操作的方向。 若为 _方向_ 未指定,返回当前方向.

## 常见问题

### @d3fc/d3fc-group 是什么？

用于操控 CSV / TSV 数据的功能,用于渲染分组序列\.

### 如何安装 @d3fc/d3fc-group？

在项目目录运行 npm install @d3fc/d3fc-group，或使用 pnpm add / yarn add / bun add。

### @d3fc/d3fc-group 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/d3fc\_\_d3fc-group 是否存在。

### @d3fc/d3fc-group 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @d3fc/d3fc-group 可以商用吗？

@d3fc/d3fc-group 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @d3fc/d3fc-group 的下载量有多少？

根据 npm 官方下载统计，@d3fc/d3fc-group 在 2026/10/11 – 2026/11/09 这 30 天内被下载 61,340 次，日均约 2,045 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @d3fc/d3fc-group 还在维护吗？

最新版本 3\.0\.1 发布于 2020/07/14（6 年前）；至今共发布 13 个版本，其中过去 12 个月发布了 0 个；首次发布于 2018/08/02。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

