D3 API 手册
D3
是一个相互协同工作的 模块集合; 你可以单独使用其中某些模块也可以使用默认构建的全部功能。每个模块的源码和文档都在对应的仓库中获取到。可以通过下面的链接获取更多信息。d3
v3.x 和 4.x 之间的差异可以参考 CHANGES; 3.x 的文档可以参考 这里
- Arrays (d3-array)
数组操作,包括排序、查找、汇总等等
Statistics
基本的静态统计计算方法
- d3.min - 计算数组中的最小值.
- d3.max - 计算数组中的最大值.
- d3.extent - 计算数组中的最大值和最小值.
- d3.sum - 计算数组元素之和.
- d3.mean - 计算数组元素的算术中位数.
- d3.median - 计算数组元素的中位数 (也就是 0.5-分位数).
- d3.quantile - 计算有序数组的分位数.
- d3.variance - 计算数组元素的方差.
- d3.deviation - 计算数组元素的标准差.
Search
查找类方法
- d3.scan - 使用指定的比较器进行线性查找指定的元素.
- d3.bisect - 二分查找有序数组中指定元素的索引.
- d3.bisectRight - 二分查找有序数组中指定元素的索引.
- d3.bisectLeft - 二分查找有序数组中指定元素的索引.
- d3.bisector - 用指定的访问器或比较器对二分查找.
- bisector.left - 与 bisectLeft 类似, 可以指定比较器.
- bisector.right - 与 bisectRight 类似, 可以指定比较器.
- d3.ascending - 计算两个值的自然顺序.
- d3.descending - 计算两个值的自然顺序.
Transformations
数组变换和计算,返回新的数组
- d3.cross - 计算两个数组的笛卡尔积.
- d3.merge - 将多个数组合并为一个.
- d3.pairs - 将数组中相邻的两个元素两两结合.
- d3.permute - 根据指定的索引返回对数组重排后的结果.
- d3.shuffle - 随机打乱数组顺序
- d3.ticks - 从给定的区间范围内生成一系列值.
- d3.tickIncrement - 从给定的区间范围内生成一系列值.
- d3.tickStep - 从给定的区间范围内生成一系列值.
- d3.range - 根据指定的区间生成一系列值.
- d3.transpose - 将数组的数组进行转置.
- d3.zip - 转置多个数组.
Histograms
直方图将离散样本分成连续的,不重叠的区间
- d3.histogram - 创建一个新的直方图生成器.
- histogram - 根据给定的数组计算直方图.
- histogram.value - 设置或获取直方图值访问器.
- histogram.domain - 设置或获取直方图的可观测区间.
- histogram.thresholds - 设置直方图阈值生成方式.
- d3.thresholdFreedmanDiaconis - Freedman–Diaconis 阈值生成规则.
- d3.thresholdScott - Scott’s normal reference 阈值生成规则.
- d3.thresholdSturges - Sturges’ 阈值生成规则.
Axes (d3-axis)
基于比例尺提供人类友好的标尺刻度
- d3.axisTop - 创建一个新的刻度在上的坐标轴生成器
- d3.axisRight - 创建一个新的刻度在右的坐标轴生成器
- d3.axisBottom - 创建一个新的刻度在下的坐标轴生成器
- d3.axisLeft - 创建一个新的刻度在左的坐标轴生成器
- axis - 为指定的选择器生成一个坐标轴
- axis.scale - 设置坐标轴的比例尺
- axis.ticks - 自定义刻度的显示方式以及格式化刻度
- axis.tickArguments - 自定义如何生成刻度或者格式化刻度
- axis.tickValues - 指定固定的刻度值
- axis.tickFormat - 指定固定的刻度格式化方式.
- axis.tickSize - 设置刻度大小.
- axis.tickSizeInner - 设置内侧刻度大小.
- axis.tickSizeOuter - 设置外侧(坐标轴两端)刻度大小.
- axis.tickPadding - 设置刻度和刻度文本之间的间距.
Brushes (d3-brush)
使用鼠标或触摸选择一维或二维区域
- d3.brush - 创建一个新的二维刷取交互
- d3.brushX - 创建一个新的x-维度的刷取交互
- d3.brushY - 创建一个新的y-维度的刷取交互
- brush - 将刷取操作应用到一个
selection
上 - brush.move - 移动刷取框选
- brush.extent - 定义可刷取的范围
- brush.filter - 过滤器定义哪些事件不触发刷取操作
- brush.handleSize - 设置刷取把柄的大小
- brush.on - 注册刷取事件句柄
- d3.brushSelection - 获取指定节点的刷取范围
Chords (d3-chord)
- d3.chord - 创建一个新的弦图布局.
- chord - 根据指定的方阵计算布局.
- chord.padAngle - 设置相邻的分组之间的间隔
- chord.sortGroups - 定义分组排序规则
- chord.sortSubgroups - 定义分组内部子分组的排序规则
- chord.sortChords - 定义弦之间的排序规则
- d3.ribbon - 创建一个ribbon(弦)生成器
- ribbon - 根据指定的数据返回一个path路径以表示弦.
- ribbon.source - 设置ribbon的源访问器.
- ribbon.target - 设置ribbon的目标访问器.
- ribbon.radius - 设置ribbon的半径.
- ribbon.startAngle - 设置ribbon的起始角度访问器.
- ribbon.endAngle - 设置ribbon的终止角度访问器.
- ribbon.context - 设置渲染上下文(canvas用).
Collections (d3-collection)
一组方便的数据结构。
Objects
将关联数组(对象)转为数组的一组方法
- d3.keys - 关联数组中所有的键
- d3.values - 关联数组中所有的值
- d3.entries - 将关联数组转为
key-value
形式的对象数组
Maps
与
ES6
的Map
类似,但是有些不同- d3.map - 创建一个新的空的
map
映射. - map.has - 当map映射中有给定的
key
时返回true
- map.get - 根据指定的
key
返回对应的值 - map.set - 设置指定的
key
对应的值为指定的值 - map.remove - 移除指定的
key
以及值 - map.clear - 清空map映射中所有的项
- map.keys - 以数组的形式获取map映射中的
key
- map.values - 以数组的形式获取map映射中的
value
- map.entries - 以数组的形式获取map映射中的
key-values
对象 - map.each - 遍历每一项并执行指定的方法.
- map.empty - 判断
map
映射是否为空 - map.size - 计算
map
映射中项的数目
Sets
与
ES6
的Set
类似,但是有些不同- d3.set - 创建一个新的空的集合
- set.has - 判断集合中是否包含给定的值
- set.add - 将指定的值添加到集合中
- set.remove - 移除集合中指定的值
- set.clear - 清空集合中所有的值
- set.values - 以数组的形式获取集合中的所有值
- set.each - 为集合中每一个值执行指定的函数
- set.empty - 判断集合是否为空
- set.size - 获取集合中项的多少
Nests
根据指定的规则将数组重组为层次结构
- d3.nest - 创建一个新的嵌套对象.
- nest.key - 为嵌套操作添加一个
key
作为分层依据 - nest.sortKeys - 根据
key
对当前层次的进行排序 - nest.sortValues - 根据
value
对当叶节点进行排序 - nest.rollup - 为叶节点指定一个
rollup
(归纳)函数 - nest.map - 生成嵌套结果,并返回一个
map
映射 - nest.object - 生成嵌套结果并返回一个关联数组
- nest.entries - 生成嵌套结果,并返回一组
key-value
元组
Colors (d3-color)
颜色空间以及转换
- d3.color - 转换指定的CSS颜色字符串.
- color.rgb - 计算当前颜色值的RGB表示.
- color.brighter - 创建一个更亮的颜色副本.
- color.darker - 创建一个更暗的颜色副本
- color.displayable - 判断当前设备是否支持当前颜色
- color.hex - 返回十六进制的
RGB
字符串标识当前的颜色. - color.toString - 将当前颜色转为RGB颜色的十六进制表示
- d3.rgb - 创建一个新的RGB颜色.
- d3.hsl - 创建一个新的HSL颜色.
- d3.lab - 创建一个新的Lab颜色.
- d3.hcl - 创建一个新的HCL颜色.
- d3.lch - create a new HCL color.
- d3.gray - create a new Lab gray.
- d3.cubehelix - 创建一个新的Cubehelix颜色.
Color Schemes (d3-scale-chromatic)
Color ramps and palettes for quantitative, ordinal and categorical scales.
Categorical
- d3.schemeCategory10 -
- d3.schemeAccent -
- d3.schemeDark2 -
- d3.schemePaired -
- d3.schemePastel1 -
- d3.schemePastel2 -
- d3.schemeSet1 -
- d3.schemeSet2 -
- d3.schemeSet3 -
Diverging
- d3.interpolateBrBG -
- d3.interpolatePiYG -
- d3.interpolatePRGn -
- d3.interpolatePuOr -
- d3.interpolateRdBu -
- d3.interpolateRdGy -
- d3.interpolateRdYlBu -
- d3.interpolateRdYlGn -
- d3.interpolateSpectral -
- d3.schemeBrBG -
- d3.schemePiYG -
- d3.schemePRGn -
- d3.schemePuOr -
- d3.schemeRdBu -
- d3.schemeRdGy -
- d3.schemeRdYlBu -
- d3.schemeRdYlGn -
- d3.schemeSpectral -
Sequential (Single Hue)
- d3.interpolateBlues -
- d3.interpolateGreens -
- d3.interpolateGreys -
- d3.interpolateOranges -
- d3.interpolatePurples -
- d3.interpolateReds -
- d3.schemeBlues -
- d3.schemeGreens -
- d3.schemeGreys -
- d3.schemeOranges -
- d3.schemePurples -
- d3.schemeReds -
Sequential (Multi-Hue)
- d3.interpolateBuGn -
- d3.interpolateBuPu -
- d3.interpolateCool -
- d3.interpolateCubehelixDefault -
- d3.interpolateGnBu -
- d3.interpolateInferno -
- d3.interpolateMagma -
- d3.interpolateOrRd -
- d3.interpolatePlasma -
- d3.interpolatePuBu -
- d3.interpolatePuBuGn -
- d3.interpolatePuRd -
- d3.interpolateRdPu -
- d3.interpolateViridis -
- d3.interpolateWarm -
- d3.interpolateYlGn -
- d3.interpolateYlGnBu -
- d3.interpolateYlOrBr -
- d3.interpolateYlOrRd -
- d3.schemeBuGn -
- d3.schemeBuPu -
- d3.schemeGnBu -
- d3.schemeOrRd -
- d3.schemePuBu -
- d3.schemePuBuGn -
- d3.schemePuRd -
- d3.schemeRdPu -
- d3.schemeYlGn -
- d3.schemeYlGnBu -
- d3.schemeYlOrBr -
- d3.schemeYlOrRd -
Cyclical
- d3.interpolateRainbow - the “less-angry” rainbow
- d3.interpolateSinebow - the “sinebow” smooth rainbow
Contours (d3-contour)
Compute contour polygons using marching squares.
- d3.contours - create a new contour generator.
- contours - compute the contours for a given grid of values.
- contours.contour -
- contours.size -
- contours.smooth -
- contours.thresholds -
- d3.contourDensity - create a new density estimator.
- density - estimate the density of a given array of samples.
- density.x -
- density.y -
- density.cellSize -
- density.thresholds -
- density.bandwidth -
Dispatches (d3-dispatch)
使用命名回调函数分离关注点
- d3.dispatch - 创建一个自定义事件分发器
- dispatch.on - 注册或取消注册事件监听器
- dispatch.copy - 创建分发器的副本
- dispatch.call - 分发事件到注册的事件监听器
- dispatch.apply - 分发事件到注册事件监听器
Dragging (d3-drag)
使用鼠标或触摸输入拖放
SVG
,HTML
或者Canvas
- d3.drag - 创建一个拖拽交互.
- drag - 将拖拽交互应用于选择集上.
- drag.container - 设置拖拽坐标系统.
- drag.filter - 忽略一些拖拽启动事件.
- drag.touchable - 设置触摸支持检测.
- drag.subject - 设置被拖拽的主体.
- drag.clickDistance - set the click distance threshold. --TODO
- drag.on - 监听拖拽事件.
- event.on - 在当前拖拽手势中监听拖拽事件.
- d3.dragDisable - 阻止原生拖拽以及文本选择.
- d3.dragEnable - 启用原生拖拽以及文本选择.
Delimiter-Separated Values (d3-dsv)
解析和格式化以分隔符隔开的特定格式文件或字符串,大多数情况下指 CSV 和 TSV.
- d3.dsvFormat - 根据指定的分隔符创建一个新的解析器和格式化器.
- dsv.parse - 解析指定的字符串并返回对象数组.
- dsv.parseRows - 解析指定的字符串并返回行数组.
- dsv.format - 格式化指定的对象数组为字符串.
- dsv.formatRows - 格式化指定的行数组为字符串.
- d3.csvParse - 解析指定的 CSV 字符串并返回对象数组.
- d3.csvParseRows - 解析指定的 CSV 字符串并返回行数组.
- d3.csvFormat - 格式化指定的对象数组为 CSV.
- d3.csvFormatRows - 格式化指定的行数组为 CSV.
- d3.tsvParse - 解析指定的 TSV 字符串并返回对象数组.
- d3.tsvParseRows - 解析指定的 TSV 字符串并返回行数组.
- d3.tsvFormat - 格式化指定的对象数组为 TSV.
- d3.tsvFormatRows - 格式化指定的行数组为 TSV.
Easings (d3-ease)
平滑过渡的过渡函数.
- ease - 计算标准时间经过缓动方法计算后的时间.
- d3.easeLinear - linear 缓动; 恒等函数.
- d3.easePolyIn - polynomial 缓动.
- d3.easePolyOut - 反转 polynomial 缓动.
- d3.easePolyInOut - 对称 polynomial 缓动.
- poly.exponent - 指定 polynomial 的指数.
- d3.easeQuad - easeQuadInOut 的别名.
- d3.easeQuadIn - quadratic 缓动.
- d3.easeQuadOut - 反转 quadratic 缓动.
- d3.easeQuadInOut - 对称 quadratic 缓动.
- d3.easeCubic - easeCubicInOut 的别名.
- d3.easeCubicIn - cubic 缓动.
- d3.easeCubicOut - 反转 cubic 缓动.
- d3.easeCubicInOut - 对称 cubic 缓动.
- d3.easeSin - easeSinInOut 的别名.
- d3.easeSinIn - sinusoidal 缓动.
- d3.easeSinOut - 反转 sinusoidal 缓动.
- d3.easeSinInOut - 对称 sinusoidal 缓动.
- d3.easeExp - easeExpInOut 的别名.
- d3.easeExpIn - exponential 缓动.
- d3.easeExpOut - 反转 exponential 缓动.
- d3.easeExpInOut - 对称 exponential 缓动.
- d3.easeCircle - easeCircleInOut 的别名.
- d3.easeCircleIn - circular 缓动.
- d3.easeCircleOut - 反转 circular 缓动.
- d3.easeCircleInOut - 对称 circular 缓动.
- d3.easeElastic - easeElasticOut 的别名.
- d3.easeElasticIn - elastic 缓动, 就像是橡皮筋.
- d3.easeElasticOut - 反转 elastic 缓动.
- d3.easeElasticInOut - 对称 elastic 缓动.
- elastic.amplitude - 指定 elastic 的振幅.
- elastic.period - 指定 elastic 的周期.
- d3.easeBack - easeBackInOut 的别名.
- d3.easeBackIn - anticipatory 缓动, 就像是舞者在跳跃之前先弯曲膝盖.
- d3.easeBackOut - 反转 anticipatory 缓动.
- d3.easeBackInOut - 对称 anticipatory 缓动.
- back.overshoot - 指定超调量.
- d3.easeBounce - easeBounceOut 的别名.
- d3.easeBounceIn - bounce 缓动, 就像是橡皮球.
- d3.easeBounceOut - 反转 bounce 缓动.
- d3.easeBounceInOut - 对称 bounce 缓动.
Fetches (d3-fetch)
基于 Fetch API 的更为便捷的获取数据方法.
- d3.blob - 以
blob
的形式获取文件. - d3.buffer - 以
array buffer
的形式获取文件. - d3.csv - 获取逗号分隔符(
CSV
)文件. - d3.dsv - 获取分隔符(
DSV
)文件. - d3.image - 获取图片.
- d3.json - 获取
JSON
文件. - d3.text - 获取无格式文本.
- d3.tsv - 获取
tab
分隔符(TSV
)文件.
Forces (d3-force)
使用速度
Verlet
积分的力模型仿真布局.- d3.forceSimulation - 创建一个新的力学仿真.
- simulation.restart - 重新启动仿真的定时器.
- simulation.stop - 停止仿真的定时器.
- simulation.tick - 进行一步仿真模拟.
- simulation.nodes - 设置仿真的节点.
- simulation.alpha - 设置当前的
alpha
值. - simulation.alphaMin - 设置最小
alpha
阈值. - simulation.alphaDecay - 设置
alpha
衰减率. - simulation.alphaTarget - 设置目标
alpha
值. - simulation.velocityDecay - 设置速度衰减率.
- simulation.force - 添加或移除一个力模型.
- simulation.find - 根据指定的位置找出最近的节点.
- simulation.on - 添加或移除事件监听器.
- force - 应用力模型.
- force.initialize - 根据指定的节点初始化力模型.
- d3.forceCenter - 创建一个中心作用力.
- center.x - 设置中心作用力的 x -坐标.
- center.y - 设置中心作用力的 y -坐标.
- d3.forceCollide - 创建一个圆形区域的碰撞检测力模型.
- collide.radius - 设置碰撞半径.
- collide.strength - 设置碰撞检测力模型的强度.
- collide.iterations - 设置迭代次数.
- d3.forceLink - 创建一个
link
(弹簧) 作用力. - link.links - 设置弹簧作用力的边.
- link.id - 设置边元素中节点的查找方式是索引还是
id
字符串. - link.distance - 设置
link
的距离. - link.strength - 设置
link
的强度. - link.iterations - 设置迭代次数.
- d3.forceManyBody - 创建一个电荷作用力模型.
- manyBody.strength - 设置电荷力模型的强度.
- manyBody.theta - 设置
Barnes–Hut
算法的精度. - manyBody.distanceMin - 限制节点之间的最小距离.
- manyBody.distanceMax - 限制节点之间的最大距离.
- d3.forceX - 创建一个 x -方向的一维作用力.
- x.strength - 设置力强度.
- x.x - 设置目标 x -坐标.
- d3.forceY - 创建一个 y -方向的一维作用力.
- y.strength - 设置力强度.
- y.y - 设置目标 y -坐标.
- d3.forceRadial - 创建一个环形布局的作用力.
- radial.strength - 设置力强度.
- radial.radius - 设置目标半径.
- radial.x - 设置环形作用力的目标中心 x -坐标.
- radial.y - 设置环形作用力的目标中心 y -坐标.
Number Formats (d3-format)
对人类友好的数值格式化.
- d3.format - 默认语言环境中的 locale.format 别名.
- d3.formatPrefix - 默认语言环境中的 locale.formatPrefix 别名.
- d3.formatSpecifier - 解析指定的说明符.
- d3.formatLocale - 定义一个自定义语言环境.
- d3.formatDefaultLocale - 定义一个默认的语言环境.
- locale.format - 创建一个数值格式化.
- locale.formatPrefix - 创建一个科学计数法的数值格式化.
- d3.precisionFixed - 为小数计数法计算建议的精度.
- d3.precisionPrefix - 为科学计数法计算建议的十进制精度.
- d3.precisionRound - 为四舍五入计算建议的十进制精度.
Geographies (d3-geo)
地理投影, 形状以及数学计算.
Paths
- d3.geoPath - 创建一个新的地理路径生成器.
- path - 投影并渲染指定的地理特征.
- path.area - 计算指定的二位地理特征面积.
- path.bounds - 计算指定的二位地理特征包裹框.
- path.centroid - 算指定的二位地理特征中心.
- path.measure - 算指定的二位地理特征周长.
- path.projection - 设置地理路径生成器的投影方式.
- path.context - 设置渲染上下文.
- path.pointRadius - 设置点特征的半径.
Geographies (d3-geo)
地理投影, 形状以及数学计算.
Paths
- d3.geoPath - 创建一个新的地理路径生成器.
- path - 投影并渲染指定的地理特征.
- path.area - 计算指定的二位地理特征面积.
- path.bounds - 计算指定的二位地理特征包裹框.
- path.centroid - 算指定的二位地理特征中心.
- path.measure - 算指定的二位地理特征周长.
- path.projection - 设置地理路径生成器的投影方式.
- path.context - 设置渲染上下文.
- path.pointRadius - 设置点特征的半径.
Projections
- projection - 将指定的球面上一点投影到平面.
- projection.invert - 逆转投影,根据平面一点反向计算球面坐标.
- projection.stream - 将指定的流包装为
project geometry
. - projection.clipAngle - 设置剪辑圆的半径.
- projection.clipExtent - 以像素为单位设置视窗的裁剪范围.
- projection.angle - 设置投影后的旋转.
- projection.scale - 设置缩放因子.
- projection.translate - 设置平移偏移量.
- projection.fitExtent - 设置缩放和转换以适配
GeoJSON
对象. - projection.fitSize - 设置缩放和转换以适配
GeoJSON
对象. - projection.fitWidth - 设置缩放和转换以适配
GeoJSON
对象. - projection.fitHeight - 设置缩放和转换以适配
GeoJSON
对象. - projection.center - 设置中心点.
- projection.rotate - 设置三轴旋转角度.
- projection.precision - 设置采样的精度阈值.
- projection.preclip - 设置球形剪切流变换.
- projection.postclip - 设置平面剪切流变换.
- d3.geoClipAntimeridian - 沿着对向子午线切割的球面集合图形.
- d3.geoClipCircle - 球面几何裁剪.
- d3.geoClipRectangle - 将平面几何图形剪辑到矩形视图.
- d3.geoAlbers -
Albers
等面积圆锥投影. - d3.geoAlbersUsa - 适用于美国的复合
Albers
投影. - d3.geoAzimuthalEqualArea - 等面积方位投影.
- d3.geoAzimuthalEquidistant - 方位等距投影.
- d3.geoConicConformal - 圆锥保角投影.
- d3.geoConicEqualArea - 圆锥等面积(
Albers
)投影. - d3.geoConicEquidistant -等距圆锥投影.
- conic.parallels - 设置两条标准平行线.
- d3.geoEquirectangular - 等矩形(平板)投影.
- d3.geoGnomonic - 诺蒙尼日投影.
- d3.geoMercator - 球面墨卡托投影.
- d3.geoOrthographic - 方位角正投影.
- d3.geoStereographic - 方位立体投影.
- d3.geoTransverseMercator - 横向球面墨卡托投影.
- project - 将球面坐标点投影到平面.
- project.invert - 平面到球面的投影逆计算.
- d3.geoProjection - 创建一个自定义投影.
- d3.geoProjectionMutator - 创建自定义可配置的投影.
- d3.geoAzimuthalEqualAreaRaw - 原始的等面积方位投影.
- d3.geoAzimuthalEquidistantRaw - 原始的方位投影.
- d3.geoConicConformalRaw - 原始的圆锥保角投影.
- d3.geoConicEqualAreaRaw - 原始的圆锥等面积 (
Albers)
投影. - d3.geoConicEquidistantRaw - 原始的等距圆锥投影.
- d3.geoEquirectangularRaw - 原始的等矩形(平板)投影.
- d3.geoGnomonicRaw - 原始的诺蒙尼日投影.
- d3.geoMercatorRaw - 原始的
Mercator
投影. - d3.geoOrthographicRaw - 原始方位角正投影.
- d3.geoStereographicRaw - 原始方位立体投影.
- d3.geoTransverseMercatorRaw - 原始的横向球面墨卡托投影.
Spherical Math
- d3.geoArea - 根据给定的地理特征计算球面面积.
- d3.geoBounds - 根据指定的地理特征计算包裹框(经纬度).
- d3.geoCentroid - 根据给定的地理特征计算球面中心.
- d3.geoContains - 测试一个点是否在给定的地理特征轮廓内部.
- d3.geoDistance - 计算两个点之间的大圆距离.
- d3.geoLength - 计算一条线的长度或者多边形的周长.
- d3.geoInterpolate - 在两个点之间沿着大圆进行插值.
- d3.geoRotation - 根据指定的角度创建一个旋转函数.
- rotation - 沿着指定的球面对指定点进行旋转.
- rotation.invert - 计算某个点在旋转之前的点.
Spherical Shapes
- d3.geoCircle - 创建一个圆生成器.
- circle - 以分段的多边形的形式生成一个圆.
- circle.center - 以经纬度的方式指定圆心.
- circle.radius - 以度为单位指定圆的角半径.
- circle.precision - 指定分段圆的精度.
- d3.geoGraticule - 创建一个经纬网生成器.
- graticule - 生成表示经纬线的几何对象
MultiLineString
. - graticule.lines - 生成表示经纬线的几何对象
LineStrings
数组. - graticule.outline - 生成经纬网的包裹多边形边界.
- graticule.extent - 获取或设置经纬度范围.
- graticule.extentMajor - 获取或设置经度范围.
- graticule.extentMinor - 获取或设置纬度范围.
- graticule.step - 获取或设置经纬度间隔.
- graticule.stepMajor - 获取或设置经度步长间隔.
- graticule.stepMinor - 获取或设置纬度步长间隔.
- graticule.precision - 获取或设置纬度度精度.
- d3.geoGraticule10 - 生成默认的
10°
全球经纬线.
Streams
- d3.geoStream - 将
GeoJSON
对象转为几何流. - stream.point - 表明指定点的坐标.
- stream.lineStart - 表示线或者环的起点.
- stream.lineEnd - 表示线或者环的终点.
- stream.polygonStart - 表示多边形的起点.
- stream.polygonEnd - 表示多边形的终点.
- stream.sphere - 表示球.
Transforms
- d3.geoIdentity - 缩放, 平移或者裁剪平面几何.
- identity.reflectX - 反转 x-维度.
- identity.reflectY - 反转 y-维度.
- d3.geoTransform - 定义一个自定义的几个变换.
Hierarchies (d3-hierarchy)
对层次数据进行可视化的一些布局算法.
- d3.hierarchy - 从给定的层次结构数据构造一个根节点并为各个节点指定深度等属性.
- node.ancestors - 从当前节点开始返回其祖先节点数组.
- node.descendants - 从当前节点开始返回其后代节点数组.
- node.leaves - 返回当前节点为根节点的子树的叶节点.
- node.path - 返回从当前节点到指定目标节点的最短路径.
- node.links - 返回当前节点所在子树的所有边.
- node.sum - 评估和汇总定量值.
- node.sort - 对后代兄弟节点进行排序.
- node.count - 统计叶节点的个数.
- node.each - 广度优先遍历当前子树.
- node.eachAfter - 后续遍历当前子树.
- node.eachBefore - 前序遍历当前子树.
- node.copy - 拷贝一个当前节点为根节点的子树的副本.
- d3.stratify - 创建一个新的分层操作.
- stratify - 根据扁平数据创建一个分层数据.
- stratify.id - 设置节点
id
访问器. - stratify.parentId - 设置父节点
id
访问器. - d3.cluster - 创建一个新的集群(系统树图)布局.
- cluster - 将指定的数据布局为系统树图.
- cluster.size - 设置布局尺寸.
- cluster.nodeSize - 设计节点尺寸.
- cluster.separation - 设置两个叶节点之间的间距.
- d3.tree - 创建一个新的整齐(同深度节点对齐)的树布局.
- tree - 将指定的层次数据布局为整齐的树布局.
- tree.size - 设置布局尺寸.
- tree.nodeSize - 设置节点尺寸.
- tree.separation - 设置两个相邻的节点之间的间距.
- d3.treemap - 创建一个矩阵树图布局.
- treemap - 将层次数据布局为矩阵树图.
- treemap.tile - 设置矩阵树图布局的填铺方法.
- treemap.size - 设置布局尺寸.
- treemap.round - 设置输出坐标是否取整.
- treemap.padding - 设置间隔参数.
- treemap.paddingInner - 设置同级节点之间的间隔.
- treemap.paddingOuter - 设置父节点和子节点之间的间距.
- treemap.paddingTop - 设置父节点和子节点之间的顶部间距.
- treemap.paddingRight - 设置父节点和子节点之间的右侧间距.
- treemap.paddingBottom - 设置父节点和子节点之间的底部间距.
- treemap.paddingLeft - 设置父节点和子节点之间的左侧间距.
- d3.treemapBinary - tile using a balanced binary tree.
- d3.treemapDice - tile into a horizontal row.
- d3.treemapSlice - tile into a vertical column.
- d3.treemapSliceDice - alternate between slicing and dicing.
- d3.treemapSquarify - tile using squarified rows per Bruls et. al.
- d3.treemapResquarify - like d3.treemapSquarify, but performs stable updates.
- squarify.ratio - set the desired rectangle aspect ratio.
- d3.partition - 创建一个新的分区布局.
- partition - 将层次数据布局为分区图(属性计算).
- partition.size - 设置分区图的尺寸.
- partition.round - 设置输出坐标是否取整.
- partition.padding - 设置间隙.
- d3.pack - 创建一个新的圆形打包图.
- pack - 为指定的层次数据计算绘制打包图需要的属性.
- pack.radius - 设置半径访问器.
- pack.size - 设置布局尺寸.
- pack.padding - 设置间隙.
- d3.packSiblings - 将一组圆进行打包.
- d3.packEnclose - 计算指定圆数组的最小包裹圆.
Interpolators (d3-interpolate)
对数值、颜色、字符串、数组、对象等进行插值
- d3.interpolate - 生成一个任意数值的插值器.
- d3.interpolateArray - 生成一个数组插值器.
- d3.interpolateDate - 生成一个时间类型插值器.
- d3.interpolateNumber - 生成一个时间类型插值器.
- d3.interpolateObject - 生成一个对象类型插值器.
- d3.interpolateRound - 生成一个数值类型插值器.
- d3.interpolateString - 生成一个字符串类型插值器.
- d3.interpolateTransformCss - 生成一个 2D css 样式过渡插值器.
- d3.interpolateTransformSvg - 生成一个 2D SVG 过渡插值器.
- d3.interpolateZoom - 在两个缩放视图之间过渡的插值器.
- d3.interpolateRgb - 生成一个RGB类型插值器.
- d3.interpolateRgbBasis - 根据一组颜色返回一个 B- 样条插值器.
- d3.interpolateRgbBasisClosed - 根据一组颜色返回一个 B- 样条插值器.
- d3.interpolateHsl - 生成一个 Hsl 类型插值器.
- d3.interpolateHslLong - 生成一个 Hsl 类型插值器(反向模式).
- d3.interpolateLab - 生成一个 Lab 类型插值器.
- d3.interpolateHcl - 生成一个 Hcl 类型插值器.
- d3.interpolateHclLong - 生成一个
Hcl
类型插值器(反向模式). - d3.interpolateCubehelix - 生成一个
Cubehelix
类型插值器. - d3.interpolateCubehelixLong - 生成一个
Cubehelix
类型插值器(反向模式). - interpolate.gamma - 应用
gamma
修正. - d3.interpolateBasis - 根据一组数值返回一个 B- 样条插值器.
- d3.interpolateBasisClosed - 根据一组数值返回一个 B- 样条插值器.
- d3.piecewise - 根据指定的
values
生成一个分段插值器. - d3.quantize - 插值器生成一组均匀采样.
Paths (d3-path)
将 Canvas 路径命令序列化为 SVG 路径字符串。
- d3.path - 创建一个新的路径序列化.
- path.moveTo - 移动到指定的点.
- path.closePath - 闭合当前子路径.
- path.lineTo - 绘制直线.
- path.quadraticCurveTo - 绘制二次
Bézier
曲线. - path.bezierCurveTo - 绘制三次
Bézier
曲线. - path.arcTo - 绘制弧线段.
- path.arc - 绘制弧线段.
- path.rect - 绘制矩形.
- path.toString - 序列化为
SVG
路径字符串.
Polygons (d3-polygon)
二维多边形的几何操作.
- d3.polygonArea - 计算指定多边形的面积.
- d3.polygonCentroid - 计算指定多边形的几何中心.
- d3.polygonHull - 计算指定一系列点的凸包.
- d3.polygonContains - 测试某个点是否在某个多边形内部.
- d3.polygonLength - 计算指定多边形的周长.
Quadtrees (d3-quadtree)
四叉树, 二维空间递归细分.
- d3.quadtree - 创建一个新的空的四叉树.
- quadtree.x - 设置 x 访问器.
- quadtree.y - 设置 y 访问器.
- quadtree.add - 向四叉树中添加数据.
- quadtree.addAll - 向四叉树中添加数据数组.
- quadtree.remove - 从四叉树中移除数据.
- quadtree.removeAll - 从四叉树中移除一组数据.
- quadtree.copy - 创建一个四叉树的拷贝.
- quadtree.root - 获取四叉树的根节点.
- quadtree.data - 从四叉树中取回数据.
- quadtree.size - 计算四叉树中的数据个数.
- quadtree.find - 从四叉树中快速查找最接近的数据.
- quadtree.visit - 前序遍历四叉树中的所有节点.
- quadtree.visitAfter - 后序遍历四叉树中的所有节点.
- quadtree.cover - 扩展四叉树直到覆盖指定的点.
- quadtree.extent - 扩展四叉树以覆盖指定的区间.
Random Numbers (d3-random)
基于多种多样的分布模型生成随机数.
- d3.randomUniform - 一般分布.
- d3.randomNormal - 标准高斯分布.
- d3.randomLogNormal - 对数分布.
- d3.randomBates - 贝茨分布.
- d3.randomIrwinHall - Irwin–Hall 分布.
- d3.randomExponential - 指数分布.
- random.source - 设置随机数生成源.
Scales (d3-scale)
将抽象数据映射到可视化表示的编码.
Continuous Scales
将一个连续的,定量的输入映射到连续的输出区间.
- continuous - 根据给定的输入值计算对应的输出值.
- continuous.invert - 根据输出值计算对应的输入值.
- continuous.domain - 设置输入范围.
- continuous.range - 设置输出范围.
- continuous.rangeRound - 设置输出范围并且启用四舍五入.
- continuous.clamp - 启用输入或输出的范围限制(输入输出限制在定义的范围之内).
- continuous.interpolate - 设置输出插值器.
- continuous.ticks - 从输入范围中提取具有代表意义的值.
- continuous.tickFormat - 将刻度格式化为人类友好的格式.
- continuous.nice - 将输入范围扩展到漂亮的整数.
- continuous.copy - 创建一个当前比例尺的副本.
- d3.scaleLinear - 创建一个定量的线性比例尺.
- d3.scalePow - 创建一个定量的指数比例尺.
- pow - 根据输入值计算对应的输出值.
- pow.invert - 根据输出值计算对应的输入值.
- pow.exponent - 设置指数.
- pow.domain - 设置输入范围.
- pow.range - 设置输出范围.
- pow.rangeRound - 设置输出范围并且启用四舍五入.
- pow.clamp - 启用输入或输出的范围限制.
- pow.interpolate - 设置输出插值器.
- pow.ticks - 从输入范围中提取具有代表意义的值(作为刻度).
- pow.tickFormat - 将刻度格式化为人类友好的格式.
- pow.nice - 将输入范围扩展到漂亮的整数.
- pow.copy - 创建一个当前比例尺的副本.
- d3.scaleSqrt - 创建一个指数为
0.5
的指数比例尺. - d3.scaleLog - 创建一个对数比例尺.
- log - 根据输入值计算对应的输出值.
- log.invert - 根据输出值计算对应的输入值.
- log.base - 设置对数的基.
- log.domain - 设置输入范围.
- log.range - 设置输出范围.
- log.rangeRound - 设置输出范围并且启用四舍五入.
- log.clamp - 启用输入或输出的范围限制.
- log.interpolate - 设置输出插值器.
- log.ticks - 从输入范围中提取具有代表意义的值(作为刻度).
- log.tickFormat - 将刻度格式化为人类友好的格式.
- log.nice - 将输入范围扩展到漂亮的整数.
- log.copy - 创建一个当前比例尺的副本.
- d3.scaleIdentity - 创建一个定量的恒等比例尺.
- d3.scaleTime - 创建一个线性的时间比例尺.
- time - 根据输入值计算对应的输出值.
- time.invert - 根据输出值计算对应的输入值.
- time.domain - 设置输入范围.
- time.range - 设置输出范围.
- time.rangeRound - 设置输出范围并且启用四舍五入.
- time.clamp - 启用输入或输出的范围限制.
- time.interpolate - 设置输出插值器.
- time.ticks - 从输入范围中提取具有代表意义的值(作为刻度).
- time.tickFormat - 将刻度格式化为人类友好的格式.
- time.nice - 扩展输入范围到一个友好的时间.
- time.copy - 创建一个当前比例尺的副本.
- d3.scaleUtc - 创建一个
UTC
线性比例尺.
Sequential Scales
将连续的定量的输入映射到连续的固定的插值器.
- d3.scaleSequential - 创建一个序列比例尺.
- sequential.interpolator - 设置序列比例尺的插值器.
Diverging Scales
将连续的,定量的输入映射到连续的固定的插值器
- d3.scaleDiverging - 创建一个发散比例尺.
- diverging.interpolator - 设置发散比例尺的插值器.
Quantize Scales
将连续的输入域映射到离散的输出域.
- d3.scaleQuantize - 创建一个量化比例尺
- quantize - 根据输入值计算对应的输出值.
- quantize.invertExtent - 根据输出值计算输入范围.
- quantize.domain - 设置输入范围.
- quantize.range - 设置输出范围.
- quantize.nice - 将输入范围扩展到漂亮的整数.
- quantize.ticks - 从输入范围中提取具有代表意义的值(作为刻度).
- quantize.tickFormat - 将刻度格式化为人类友好的格式.
- quantize.copy - 创建一个当前比例尺的副本.
- d3.scaleQuantile - 创建一个分位数比例尺.
- quantile - 根据输入值计算对应的输出值.
- quantile.invertExtent - 根据输出值计算对应的输入值的范围.
- quantile.domain - 设置输入范围.
- quantile.range - 设置输出范围.
- quantile.quantiles - 获取分位数比例尺的阈值.
- quantile.copy - 创建一个当前比例尺的副本.
- d3.scaleThreshold - 创建一个阈值比例尺.
- threshold - 根据输入值计算对应的输出值.
- threshold.invertExtent - 根据输出值计算对应的输入区间.
- threshold.domain - 设置输入范围.
- threshold.range - 设置输出范围.
- threshold.copy - 创建一个当前比例尺的副本.
Ordinal Scales
将离散的输入域映射到离散的输出域.
- d3.scaleOrdinal - 创建一个序数比例尺.
- ordinal - 根据输入值计算对应的输出值.
- ordinal.domain - 设置输入范围.
- ordinal.range - 设置输出范围.
- ordinal.unknown - 设置未知输入的输出值.
- ordinal.copy - 创建一个当前比例尺的副本.
- d3.scaleImplicit - 隐式的未知值.
- d3.scaleBand - 创建一个序数分段比例尺.
- band - 根据给定的输入值计算经过映射之后的分段的起点值.
- band.domain - 设置输入范围.
- band.range - 设置输出范围.
- band.rangeRound - 设置输出范围并启用四舍五入.
- band.round - 启用四舍五入.
- band.paddingInner - 设置分段之间的间隔.
- band.paddingOuter - 设置第一个和最后一个
band
的外边距. - band.padding - 设置最外侧以及所有
band
之间的间隔. - band.align - 设置分段的对齐方式.
- band.bandwidth - 获取每个
band
的宽度. - band.step - 获取两个相邻的
band
之间的距离. - band.copy - 创建一个当前比例尺的副本.
- d3.scalePoint - 创建一个序数定点比例尺.
- point - 根据跟定的输入计算对应的定点值.
- point.domain - 设置输入范围.
- point.range - 设置输出范围.
- point.rangeRound - 设置输出范围并且启用四舍五入.
- point.round - 启用四舍五入.
- point.padding - 设置第一个以及最后一个刻度的外边距.
- point.align - 设置点的对齐方式.
- point.bandwidth - 返回
0
. - point.step - 获取相邻两个点之间的距离.
- point.copy - 创建一个当前比例尺的副本.
Selections (d3-selection)
通过选择元素和绑定数据对 DOM 元素进行修改或变换.
Selecting Elements
- d3.selection - 选取文档元素的根节点.
- d3.select - 从文档中选取一个元素.
- d3.selectAll - 从文档中选择多个元素.
- selection.select - 从每个被选中的元素中选择一个后代元素.
- selection.selectAll -从每个被选中的元素中选择多个后代元素.
- selection.filter - 基于数据对元素进行过滤.
- selection.merge - 将当前选择集与其他选择集进行合并.
- d3.matcher - 测试一个元素是否符合某种选择器.
- d3.selector - 选择一个元素.
- d3.selectorAll - 选择多个元素.
- d3.window - 获取节点所属的 window.
- d3.style - 获取节点当前的指定样式名称的样式值.
Modifying Elements
- selection.attr - 设置或获取属性.
- selection.classed - 获取,添加或者移除 CSS 类.
- selection.style - 获取或设置样式属性.
- selection.property - 获取或设置一个特殊属性.
- selection.text - 设置或获取文本内容.
- selection.html - 设置或获取 HTML 内容.
- selection.append - 创建、添加并返回一个新的元素.
- selection.insert - 创建、插入并返回一个新的元素.
- selection.remove - 从文档中移除元素.
- selection.clone - 插入选中元素的克隆.
- selection.sort - 基于数据对文档中的元素进行排序.
- selection.order - 在文档中重新排列元素.
- selection.raise - 将每个选中的元素重新排列为其对应父节点的最后一个子元素..
- selection.lower - 将每个选中的元素重新排列为其对应父节点的第一个子元素.
- d3.create - 创建一个指定名称的与文档分离的元素.
- d3.creator - 根据名称返回一个创建指定元素的函数.
Joining Data
- selection.data - 将元素与数据绑定.
- selection.enter - 获取需要插入的选择集(数据个数大于元素个数)的占位符.
- selection.exit - 获取多余的元素的选择集(数据个数小于元素个数).
- selection.datum - 设置或获取元素绑定的数据集(不进行数据与元素个数的对比).
Handling Events
- selection.on - 添加或移除事件监听器.
- selection.dispatch - 分发一个自定义事件.
- d3.event - 当前交互中的用户事件对象.
- d3.customEvent - 临时定义一个自定义事件.
- d3.mouse - 获取鼠标相对于给定容器的坐标位置.
- d3.touch - 获取相对于给定容器的触摸坐标位置.
- d3.touches - 获取相对于给定容器的触摸坐标位置.
- d3.clientPoint - 获取相对于给定容器的位置.
Control Flow
- selection.each - 为每个选中的元素执行相应的函数.
- selection.call - 为当前选择集指向相应的函数.
- selection.empty - 判断当前选择集是否为空.
- selection.nodes - 以数组的形式返回当前选择集中的所有被选中的元素.
- selection.node - 返回当前选择集中第一个非空元素.
- selection.size - 返回选择集中元素选中的数量.
Local Variables
- d3.local - 声明一个新的局部变量.
- local.set - 设置一个局部变量的值.
- local.get - 获取一个局部变量的值.
- local.remove - 移除一个局部变量.
- local.toString - 获取局部变量的属性标识符.
Namespaces
- d3.namespace - 限定一个前缀的
XML
名称, 比如 “xlink:href”. - d3.namespaces - 内置的
XML
命名空间.
Shapes (d3-shape)
可视化基本图元
Arcs
圆形或环形,在饼图或者环形图中用到
- d3.arc - 创建一个环生成器.
- arc - 根据指定的数据生成环.
- arc.centroid - 计算环的中心点.
- arc.innerRadius - 设置环的内半径.
- arc.outerRadius - 设置环的外半径.
- arc.cornerRadius - 设置拐角半径.
- arc.startAngle - 设置起始角度.
- arc.endAngle - 设置终止角度.
- arc.padAngle - 设置相邻两个环之间的间隙角度.
- arc.padRadius - 设置半径间隔.
- arc.context - 设置渲染上下文.
Pies
将一组表格数据转换成生成饼图或者环形图需要的数据
- d3.pie - 创建一个新的饼图生成器.
- pie - 根据指定的数据计算每条数据对应环形的角度.
- pie.value - 设置值访问器.
- pie.sort - 设置排序比较器.
- pie.sortValues - 设置排序比较器.
- pie.startAngle - 设置所有环形的起始角度.
- pie.endAngle - 设置所有环形的终止角度.
- pie.padAngle - 设置相邻两个环之间的间隙角度.
Lines
曲线或折线,在折线图中使用.
- d3.line - 创建一个新的线条生成器.
- line - 根据指定的数据集生成一条线.
- line.x - 设置线条生成器的 x-访问器.
- line.y - 设置线条生成器的 y-访问器.
- line.defined - 设置
defined
(缺省) 访问器. - line.curve - 设置插值方式.
- line.context - 设置渲染上下文.
- d3.radialLine - 创建一个新的放射线条生成器.
- radialLine - 根据指定的数据集生成一条线.
- radialLine.angle - 设置角度访问器.
- radialLine.radius - 设置半径访问器.
- radialLine.defined - 设置
defined
(缺省) 访问器. - radialLine.curve - 设置插值方式.
- radialLine.context - 设置渲染上下文.
Areas
由基线和顶线围成的一块区域,在面积图中使用.
- d3.area - 创建一个新的区域生成器.
- area - 根据指定的数据集生成一个区域.
- area.x - 设置 x0 和 x1 访问器.
- area.x0 - 设置基线 x 访问器.
- area.x1 - 设置顶线 x 访问器.
- area.y - 设置 y0 和 y1 访问器.
- area.y0 - 设置基线 y 访问器.
- area.y1 - 设置顶线 y 访问器.
- area.defined - 设置
defined
(缺省) 访问器. - area.curve - 设置曲线插值方式.
- area.context - 设置渲染上下文.
- area.lineX0 - 派生出一条区域左侧边界线条生成器.
- area.lineX1 - 派生出一条区域右侧边界线条生成器.
- area.lineY0 - 派生出一条区域顶部边界线条生成器.
- area.lineY1 - 派生出一条区域底部边界线条生成器.
- d3.radialArea - 创建一个新的径向区域生成器.
- radialArea - 根据指定的数据集生成一个区域.
- radialArea.angle - 设置起止角度访问器.
- radialArea.startAngle - 设置起始角度访问器.
- radialArea.endAngle - 设置终止角度访问器.
- radialArea.radius - 设置内外半径访问器.
- radialArea.innerRadius - 设置内半径访问器.
- radialArea.outerRadius - 设置外半径访问器.
- radialArea.defined - 设置
defined
访问器. - radialArea.curve - 设置插值方式.
- radialArea.context - 设置渲染上下文.
- radialArea.lineStartAngle - 派生出一条区域起始角度边界线条生成器.
- radialArea.lineEndAngle - 派生出一条区域终止角度边界线条生成器.
- radialArea.lineInnerRadius - 派生出一条区域内半径边界线条生成器.
- radialArea.lineOuterRadius - 派生出一条区域外半径边界线条生成器.
Curves
在一系列点之间进行插值,形成一条连续的线.
- d3.curveBasis - 三次
basis
曲线. - d3.curveBasisClosed - 闭合的三次
basis
曲线. - d3.curveBasisOpen - 三次
basis
曲线. - d3.curveBundle - 可设置张力的三次
basis
曲线. - bundle.beta - 设置三次
basis
曲线的张力 beta. - d3.curveCardinal - 三次
cardinal
曲线. - d3.curveCardinalClosed - 闭合的三次
cardinal
曲线. - d3.curveCardinalOpen - 三次
cardinal
曲线. - cardinal.tension - 设置三次
cardinal
曲线的张力系数. - d3.curveCatmullRom - 三次
Catmull–Rom
曲线. - d3.curveCatmullRomClosed - 三次
Catmull–Rom
曲线. - d3.curveCatmullRomOpen - 三次
Catmull–Rom
曲线. - catmullRom.alpha - 设置三次
Catmull–Rom
曲线的 alpha 参数. - d3.curveLinear - 折线.
- d3.curveLinearClosed - 闭合的折线.
- d3.curveMonotoneX - 保持 x 单调性的三次曲线.
- d3.curveMonotoneY - 保持 y 单调性的三次曲线.
- d3.curveNatural - 自然三次样条曲线.
- d3.curveStep - 分段常数函数.
- d3.curveStepAfter - 分段常数函数.
- d3.curveStepBefore - 分段常数函数.
- curve.areaStart - 开始一个新的区域段.
- curve.areaEnd - 结束当前的区域段.
- curve.lineStart - 开始一个新的线段.
- curve.lineEnd - 结束当前的线段end the current line segment.
- curve.point - 为当前的线段中添加一个点.
Links
源点到目标点之间的圆滑三次
Bézier
曲线.- d3.linkVertical - 创建一个新的垂直
link
生成器. - d3.linkHorizontal - 创建一个新的水平的
link
生成器. - link - 生成一个
link
. - link.source - 设置源点访问器.
- link.target - 设置目标点访问器.
- link.x - 设置点的 x-访问器.
- link.y - 设置点的 y-访问器.
- d3.linkRadial - 创建一个新的径向
link
生成器. - radialLink.angle - 设置点的 angle 访问器.
- radialLink.radius - 设置点的 radius 访问器.
Symbols
分类形状编码,应用于散点图等场景中.
- d3.symbol - 创建一个新的符号生成器.
- symbol - 根据指定的数据生成一个符号.
- symbol.type - 设置符号的类型.
- symbol.size - 以平方像素为单位设置符号的大小.
- symbol.context - 设置渲染上下文.
- d3.symbols - 返回内置的符号类型数组.
- d3.symbolCircle - 圆.
- d3.symbolCross - 十字.
- d3.symbolDiamond - 菱形.
- d3.symbolSquare - 正方形.
- d3.symbolStar - 五角星.
- d3.symbolTriangle - 上三角.
- d3.symbolWye -
Y
符号. - symbolType.draw - 将符号绘制到指定的上下文中.
Stacks
堆叠图,堆叠面积、堆叠柱状图等.
- d3.stack - 创建一个新的堆叠生成器.
- stack - 根据给定数据集计算其堆叠图需要的各个属性.
- stack.keys - 设置
keys
访问器. - stack.value - 设置
value
访问器. - stack.order - 设置排序访问器.
- stack.offset - 设置偏移访问器.
- d3.stackOrderAscending - 将和最小的值的序列放在底部.
- d3.stackOrderDescending - 将和最大的值的序列放在底部.
- d3.stackOrderInsideOut - 和越大越靠近中间.
- d3.stackOrderNone - 使用原始数据的顺序不进行顺序调整.
- d3.stackOrderReverse - 将原始数据顺序逆转.
- d3.stackOffsetExpand - 将基线设置为
0
并且顶线为1
. - d3.stackOffsetDiverging - 正值在
0
之上,负值在0
之下. - d3.stackOffsetNone - 使用
0
基线. - d3.stackOffsetSilhouette - 将流图以
0
为中心居中. - d3.stackOffsetWiggle - 最小化流图的摆动.
Time Formats (d3-time-format)
来自
strptime
和strftime
的灵感,时间类型的解析个格式化。- d3.timeFormat - 默认时区下 locale.format 的别名.
- d3.timeParse - 默认时区下 locale.parse 的别名.
- d3.utcFormat - 默认时区下 locale.utcFormat 的别名.
- d3.utcParse - 默认时区下 locale.utcParse 的别名.
- d3.isoFormat -
ISO 8601 UTC
格式化. - d3.isoParse -
ISO 8601 UTC
解析器. - d3.timeFormatLocale - 自定义区域.
- d3.timeFormatDefaultLocale - 定义默认时区.
- locale.format - 创建一个时间格式化.
- locale.parse - 创建一个时间解析器.
- locale.utcFormat - 创建一个
UTC
格式化. - locale.utcParse - 创建一个
UTC
解析器 .
Time Intervals (d3-time)
按照人类对日期的计算方式实现的日期计算.
- d3.timeInterval - 实现一个新的自定义的事件间隔.
- interval - interval.floor 的别名.
- interval.floor - 向下取整到最近的间隔边界.
- interval.round - 取整到最近的间隔边界.
- interval.ceil - 向上取整到最近的间隔边界.
- interval.offset - 对指定日期偏移指定的步长.
- interval.range - 生成表示两个日期范围之间的值域.
- interval.filter - 过滤子集.
- interval.every - 创建一个过滤子集的过滤器.
- interval.count - 统计两个日期之间的数量.
- d3.timeMillisecond, d3.utcMillisecond - 以毫秒为单位的间隔.
- d3.timeMilliseconds, d3.utcMilliseconds - millisecond.range 的别名.
- d3.timeSecond, d3.utcSecond - 以秒为单位的间隔..
- d3.timeSeconds, d3.utcSeconds - second.range 的别名.
- d3.timeMinute, d3.utcMinute - 以分钟为单位的间隔.
- d3.timeMinutes, d3.utcMinutes - minute.range 的别名.
- d3.timeHour, d3.utcHour - 以小时为单位的间隔.
- d3.timeHours, d3.utcHours - hour.range 的别名.
- d3.timeDay, d3.utcDay - 以天为单位的间隔.
- d3.timeDays, d3.utcDays - day.range 的别名.
- d3.timeWeek, d3.utcWeek - 以周为单位的间隔.
- d3.timeWeeks, d3.utcWeeks - week.range 的别名.
- d3.timeSunday, d3.utcSunday - 以周为单位的间隔, 始于周日.
- d3.timeSundays, d3.utcSundays - sunday.range 的别名.
- d3.timeMonday, d3.utcMonday - 以周为单位的间隔, 始于周一.
- d3.timeMondays, d3.utcMondays - monday.range 的别名.
- d3.timeTuesday, d3.utcTuesday - 以周为单位的间隔, 始于周二.
- d3.timeTuesdays, d3.utcTuesdays - tuesday.range 的别名.
- d3.timeWednesday, d3.utcWednesday - 以周为单位的间隔, 始于周三.
- d3.timeWednesdays, d3.utcWednesdays - wednesday.range 的别名.
- d3.timeThursday, d3.utcThursday - 以周为单位的间隔, 始于周四.
- d3.timeThursdays, d3.utcThursdays - thursday.range 的别名.
- d3.timeFriday, d3.utcFriday - 以周为单位的间隔, 始于周五.
- d3.timeFridays, d3.utcFridays - friday.range 的别名.
- d3.timeSaturday, d3.utcSaturday - 以周为单位的间隔, 始于周六.
- d3.timeSaturdays, d3.utcSaturdays - saturday.range 的别名.
- d3.timeMonth, d3.utcMonth - 以月为单位的间隔.
- d3.timeMonths, d3.utcMonths - month.range 的别名.
- d3.timeYear, d3.utcYear - 以年为单位的间隔.
- d3.timeYears, d3.utcYears - year.range 的别名.
Timers (d3-timer)
一个高效的可以用来管理上千并发动画的队列
- d3.now - 获取当前高精度时间戳(参考DOMHighResTimeStamp).
- d3.timer - 定义一个定时器.
- timer.restart - 重新设置定时器的开始时间和回调.
- timer.stop - 停止定时器.
- d3.timerFlush - 立即执行合法的定时器.
- d3.timeout - 定义一个只执行一次回调的定时器.
- d3.interval - 定义一个可以按照指定间隔执行回调的定时器.
Transitions (d3-transition)
对 Voronoi Diagrams (d3-voronoi)
- d3.voronoi - 创建一个新的泰森多边形生成器.
- voronoi - 根据指定的一组点生成新的泰森多边形计算结果.
- voronoi.polygons - 根据指定的一组点生成泰森多边形中多边形集合.
- voronoi.triangles - 根据指定的一组点计算其德劳内三角剖分结果集合.
- voronoi.links - 计算指定一组点集的三角剖分结果以边的形式返回.
- voronoi.x - 设置 x 访问器.
- voronoi.y - 设置 y 访问器.
- voronoi.extent - 设置点集合的可观测边界.
- voronoi.size - 设置点集合的可观测边界.
- diagram.polygons - 返回指定泰森多边形的多边形数组.
- diagram.triangles - 返回指定泰森多边形的三角形数组.
- diagram.links - 返回指定泰森多边形的边数组.
- diagram.find - 找到当前泰森多边形划分中距离目标点指定半径范围内最近的点.
Zooming (d3-zoom)
使用触摸鼠标或者触摸面板缩放 SVG, HTML 或者 Canvas.
- d3.zoom - 创建一个缩放交互.
- zoom - 将缩放交互应用到指定的被选中的元素上.
- zoom.transform - 修改指定的选中的元素的变换.
- zoom.translateTo - 对指定的选中元素进行平移变换.
- zoom.translateBy - 对指定的选中元素进行平移变换.
- zoom.scaleBy - 对指定的选中元素进行苏佛昂变换.
- zoom.scaleTo - 对指定的选中元素进行平移变换.
- zoom.filter - 控制哪些输入事件可以触发缩放操作.
- zoom.touchable - 设置触摸支持检测其器.
- zoom.wheelDelta - 重置滚轮事件与缩放之间对应的倍数.
- zoom.clickDistance - 设置点击距离阈值.
- zoom.extent - 设置视口的范围.
- zoom.scaleExtent - 设置可缩放系数大小.
- zoom.translateExtent - 设置可缩放世界大小.
- zoom.constrain - 重置缩放约束逻辑.
- zoom.duration - 设置缩放变换的过渡时间.
- zoom.interpolate - 控制缩放变换的插值方式.
- zoom.on - 监听缩放事件.
- d3.zoomTransform - 获取指定元素的缩放变换.
- transform.scale - 根据指定的数值缩放当前坐标变换.
- transform.translate - 根据指定的值平移当前坐标变换.
- transform.apply - 返回指定的点经过坐标转换后的新坐标.
- transform.applyX - 返回指定的 x-坐标经过坐标转换后的新坐标.
- transform.applyY - 返回指定的 y-坐标经过坐标转换后的新坐标.
- transform.invert - 返回指定的点经过坐标转换之前的坐标.
- transform.invertX - 返回指定的点经过坐标转换之前的 x-坐标.
- transform.invertY - 返回指定的点经过坐标转换之前的 y-坐标.
- transform.rescaleX - 将当前坐标变换应用到指定的 x- 比例尺的
domain
. - transform.rescaleY - 将当前坐标变换应用到指定的 y- 比例尺的
domain
. - transform.toString - 将坐标转换格式化为
SVG
可直接用的字符串. - d3.zoomIdentity - 恒等坐标变换标识.