JavaScript可视化图表库D3.js API中文参考
D3库所提供的所有API都在d3命名空间下。d3库使用语义版本命名法(semanticversioning)。你可以用d3.version查看当前的版本信息。
d3(核心部分)
选择集
- d3.select-从当前文档中选择一系列元素。
- d3.selectAll-从当前文档中选择多项元素。
- selection.attr-设置或获取指定属性。
- selection.classed-添加或删除选定元素的CSS类(CSSclass)。
- selection.style-设置或删除CSS属性。style优先级高于attr。
- selection.property-设置或获原生的属性值(rawproperty)。
- selection.text-设置或获取选定元素的标签体文本内容。
- selection.html-设置或获取选定元素的HTML内容(类似innerHTML)
- selection.append-创建并添加新元素到选定元素后。
- selection.insert-创建并添加新元素到选定元素前。
- selection.remove-从当前文档对象中删除选定的元素。
- selection.data-设置或获取一组元素的绑定数据(getorsetdataforagroupofelements,whilecomputingarelationaljoin.)
- selection.enter-返回缺失元素的占位对象(placeholder),指向绑定的数据中比选定元素集多出的一部分元素。
- selection.exit-返回多余元素的元素集,即选择元素中比绑定数据多出的一部分。(关于data,enter,exit原理的示例1,示例2,示例3)
- selection.datum-设置或获取单独元素的数据,不进行关联。(getorsetdataforindividualelements,withoutcomputingajoin.)
- selection.filter-根据绑定的数据过滤选择集。
- selection.sort-根据绑定的数据对选择的元素进行排序。
- selection.order-对文档中的元素重排序以匹配选择集。
- selection.on-添加或删除事件监听器。
- selection.transition-启动一个过渡效果(返回Transition对象),可以理解为动画。
- selection.interrupt-立即停止所有正在进行的动画动作。
- selection.each-为每个选择的元素集调用指定的函数。
- selection.call-为当前选择的元素集调用指定的函数。
- selection.empty-测试选择集是否为空。
- selection.node-返回选择集中的第一个元素。
- selection.size-返回选择集中的元素个数。
- selection.select-选择所选的元素中的第一个子元素组成新的选择集。
- selection.selectAll-选择所选的元素中的多个子元素组成新的选择集。
- d3.selection-选择集对象原型(可通过d3.selection.prototype为选择集增强功能)。
- d3.event-获取当前交互的用户事件。
- d3.mouse-获取鼠标的相对某元素的坐标。
- d3.touches-获取相对某元素的触控点坐标。
过渡效果
- d3.transition-开始一个动画过渡。简单教程
- transition.delay-指定每个元素过渡的延迟时间(单位:毫秒ms)。
- transition.duration-指定每个元素过渡的持续时间(单位:毫秒ms)。
- transition.ease-指定过渡的缓冲函数。
- transition.attr-平滑过渡到新的attr属性值(起始属性值为当前属性)。
- transition.attrTween-在不同attr属性值之间平滑过渡(起始属性值可在过渡函数中设置,甚至整个过渡函数都可以自定义)。
- transition.style-平滑过渡到新的style属性值。
- transition.styleTween-在不同style属性值之间平滑过渡。
- transition.text-在过渡开始时设置文本内容。
- transition.tween-使某个属性过渡到一个新的属性值,该属性可以是非attr或非style属性,比如text。
- transition.select-选择每个当前元素的某个子元素进行过渡。
- transition.selectAll-选择每个当前元素的多个子元素进行过渡。
- transition.filter-通过数据筛选出当前元素中的部分元素进行过渡。
- transition.transition-当前过渡结束后开始新的过渡。
- transition.remove-过渡结束后移除当前元素。
- transition.empty-如果过渡为空就返回true。如果当前元素中没有非null元素,则此过渡为空。
- transition.node-返回过渡中的第一个元素。
- transition.size-返回过渡中当前元素的数量。
- transition.each-遍历每个元素执行操作。不指定触发类型时,立即执行操作。当指定触发类型为'start'或'end'时,会在过渡开始或结束时执行操作。
- transition.call-以当前过渡为this执行某个函数。
- d3.ease-定制过渡的缓冲函数。
- ease-缓冲函数。缓冲函数可让动画效果更自然,比如elastic缓冲函数可用以模拟弹性物体的运动。是一种插值函数的特例。
- d3.timer-开始一个定制的动画计时。功能类似于setTimeout,但内部用requestAnimationFrame实现,更高效。
- d3.timer.flush-立刻执行当前没有延迟的计时。可用于处理闪屏问题。
- d3.interpolate-生成一个插值函数,在两个参数间插值。差值函数的类型会根据输入参数的类型(数字、字符串、颜色等)而自动选择。
- interpolate-插值函数。输入参数在[0,1]之间。
- d3.interpolateNumber-在两个数字间插值。
- d3.interpolateRound-在两个数字间插值,返回值会四舍五入取整。
- d3.interpolateString-在两个字符串间插值。解析字符串中的数字,对应的数字会插值。
- d3.interpolateRgb-在两个RGB颜色间插值。
- d3.interpolateHsl-在两个HSL颜色间插值。
- d3.interpolateLab-在两个L*a*b*颜色间插值。
- d3.interpolateHcl-在两个HCL颜色间插值。
- d3.interpolateArray-在两个数列间插值。d3.interpolateArray([0,1],[1,10,100])(0.5);//returns[0.5,5.5,100]
- d3.interpolateObject-在两个object间插值。d3.interpolateArray({x:0,y:1},{x:1,y:10,z:100})(0.5);//returns{x:0.5,y:5.5,z:100}
- d3.interpolateTransform-在两个2D仿射变换间插值。
- d3.interpolateZoom-在两个点之间平滑地缩放平移。示例
- d3.interpolators-添加一个自定义的插值函数.
数据操作(WorkingwithArrays)
- d3.ascending-升序排序函数.
- d3.descending-降序排序函数.
- d3.min-获取数组中的最小值.
- d3.max-获取数组中的最大值.
- d3.extent-获取数组的范围(最小值和最大值).
- d3.sum-获取数组中数字之和.
- d3.mean-获取数组中数字的算术平均值.
- d3.median-获取数组中数字的中位数(相当于0.5-quantile的值).
- d3.quantile-获取排好序的数组的一个分位数(quantile).
- d3.bisect-通过二分法获取某个数在排好序的数组中的插入位置(同d3.bisectRight).
- d3.bisectRight-获取某个数在排好序的数组中的插入位置(相等的值归入右边).
- d3.bisectLeft-获取某个数在排好序的数组中的插入位置(相等的值归入左边).
- d3.bisector-自定义一个二分函数.
- d3.shuffle-洗牌,随机排列数组中的元素.
- d3.permute-以指定顺序排列数组中的元素.
- d3.zip-将多个数组合并成一个数组的数组,新数组的的第i个元素是原来各个数组中第i个元素组成的数组.
- d3.transpose-矩阵转置,通过d3.zip实现.
- d3.pairs-返回临近元素对的数组,d3.pairs([1,2,3,4]);//returns[[1,2],[2,3],[3,4]].
- d3.keys-返回关联数组(哈希表、json、object对象)的key组成的数组.
- d3.values-返回关联数组的value组成的数组.
- d3.entries-返回关联数组的key-value实体组成的数组,d3.entries({foo:42});//returns[{key:"foo",value:42}].
- d3.merge-将多个数组连成一个,类似于原生方法concat.d3.merge([[1],[2,3]]);//returns[1,2,3].
- d3.range-获得一个数列.d3.range([start,]stop[,step])
- d3.nest-获得一个nest对象,将数组组织成层级结构.示例:http://bl.ocks.org/phoebebright/raw/3176159/
- nest.key-为nest层级结构增加一个层级.
- nest.sortKeys-将当前的nest层级结构按key排序.
- nest.sortValues-将叶nest层级按value排序.
- nest.rollup-设置修改叶节点值的函数.
- nest.map-执行nest操作,返回一个关联数组(json).
- nest.entries-执行nest操作,返回一个key-value数组.如果nest.map返回的结果类似于{foo:42},则nest.entries返回的结果类似于[{key:"foo",value:42}].
- d3.map-将javascript的object转化为hash,屏蔽了object的原型链功能导致的与hash不一致的问题。
- map.has-map有某个key就返回true.
- map.get-返回map中某个key对应的value.
- map.set-设置map中某个key对应的value.
- map.remove-删除map中的某个key.
- map.keys-返回map中所有key组成的数组.
- map.values-返回map中所有value组成的数组.
- map.entries-返回map中所有entry(key-value键值对)组成的数组.类似于{foo:42}转化成[{key:"foo",value:42}]
- map.forEach-对map中每一个entry执行某个函数.
- d3.set-将javascript的array转化为set,屏蔽了array的object原型链功能导致的与set不一致的问题。set中的value是array中每个值转换成字符串的结果。set中的value是去重过的。
- set.has-返回set中是否含有某个value.
- set.add-添加某个value.
- set.remove-删除某个value.
- set.values-返回set中的值组成的数组.set中的value是去重过的.
- set.forEach-对set中每一个value执行某个函数.
Math
- d3.random.normal-利用正态分布产生一个随机数.
- d3.random.logNormal-利用对数正态分布产生一个随机数.
- d3.random.irwinHall-利用Irwin–Hall分布(简单可行并且容易编程的正态分布实现方法)产生一个随机数.
- d3.transform-将svg的tranform格式转化为标准的2D转换矩阵字符串格式.
载入外部资源(LoadingExternalResources)
- d3.xhr-发起XMLHttpRequest请求获取资源。
- xhr.header-设置requestheader。
- xhr.mimeType-设置Acceptrequestheader,并重写responseMIMEtype。
- xhr.response-设置response返回值转化函数。如function(request){returnJSON.parse(request.responseText);}
- xhr.get-发起GET请求。
- xhr.post-发起POST请求。
- xhr.send-以指定的方法和数据发起请求。
- xhr.abort-终止当前请求。
- xhr.on-为请求添加”beforesend”,“progress”,“load”或“error”等事件监听器。
- d3.text-请求一个text文件。
- d3.json-请求一个JSON。
- d3.html-请求一个html文本片段。
- d3.xml-请求一个XML文本片段。
- d3.csv-请求一个CSV(comma-separatedvalues,逗号分隔值)文件。
- d3.tsv-请求一个TSV(tab-separatedvalues,tab分隔值)文件。
字符串格式化(StringFormatting)
- d3.format-将数字转化成指定格式的字符串。转化的格式非常丰富,且非常智能。
- d3.formatPrefix-以指定的值和精度获得一个[SIprefix]对象。这个函数可用来自动判断数据的量级,如K(千),M(百万)等等。示例:varprefix=d3.formatPrefix(1.21e9);console.log(prefix.symbol);//“G”;console.log(prefix.scale(1.21e9));//1.21
- d3.requote-将字符串转义成可在正则表达式中使用的格式。如d3.requote(‘$');//return“\$”
- d3.round-设置某个数按小数点后多少位取整。与toFixed()类似,但返回格式为number。如d3.round(1.23);//return1;d3.round(1.23,1);//return1.2;d3.round(1.25,1);//return1.3
CSV格式化(d3.csv)
- d3.csv-获取一个CSV(comma-separatedvalues,冒号分隔值)文件。
- d3.csv.parse-将CSV文件字符串转化成object的数组,object的key由第一行决定。如:[{"Year":"1997","Length":"2.34"},{"Year":"2000","Length":"2.38"}]
- d3.csv.parseRows-将CSV文件字符串转化成数组的数组。如:[["Year","Length"],["1997","2.34"],["2000","2.38"]]
- d3.csv.format-将object的数组转化成CSV文件字符串,是d3.csv.parse的逆操作。
- d3.csv.formatRows-将数组的数组转化成CSV文件字符串,是d3.csv.parseRows的逆操作。
- d3.tsv-获取一个TSV(tab-separatedvalues,tab分隔值)文件。
- d3.tsv.parse-类似于d3.csv.parse。
- d3.tsv.parseRows-类似于d3.csv.parseRows。
- d3.tsv.format-类似于d3.csv.format。
- d3.tsv.formatRows-类似于d3.csv.formatRows。
- d3.dsv-创建一个类似于d3.csv的文件处理对象,可以自定义分隔符和mimetype。如:vardsv=d3.dsv(“|”,“text/plain”);
颜色
- d3.rgb-指定一种颜色,创建一个RGB颜色对象。支持多种颜色格式的输入。
- rgb.brighter-增强颜色的亮度,变化幅度由参数决定。
- rgb.darker-减弱颜色的亮度,变化幅度由参数决定。
- rgb.hsl-将RGB颜色对象转化成HSL颜色对象。
- rgb.toString-RGB颜色转化为字符串格式。
- d3.hsl-创建一个HSL颜色对象。支持多种颜色格式的输入。
- hsl.brighter-增强颜色的亮度,变化幅度由参数决定。
- hsl.darker-减弱颜色的亮度,变化幅度由参数决定。
- hsl.rgb-将HSL颜色对象转化成RGB颜色对象。
- hsl.toString-HSL颜色转化为字符串格式。
- d3.lab-创建一个Lab颜色对象。支持多种颜色格式的输入。
- lab.brighter-增强颜色的亮度,变化幅度由参数决定。
- lab.darker-减弱颜色的亮度,变化幅度由参数决定。
- lab.rgb-将Lab颜色对象转化成RGB颜色对象。
- lab.toString-Lab颜色转化为字符串格式。
- d3.hcl-创建一个HCL颜色对象。支持多种颜色格式的输入。
- hcl.brighter-增强颜色的亮度,变化幅度由参数决定。
- hcl.darker-减弱颜色的亮度,变化幅度由参数决定。
- hcl.rgb-将HCL颜色对象转化成RGB颜色对象。
- hcl.toString-HCL颜色转化为字符串格式。
命名空间
- d3.ns.prefix-获取或扩展已知的XML命名空间。
- d3.ns.qualify-验证命名空间前缀是否存在,如”xlink:href”中xlink是已知的命名空间。
内部方法(Internals)
- d3.functor-函数化。将非函数变量转化为只返回该变量值的函数。输入函数,则返回原函数;输入值,则返回一个函数,该函数只返回原值。
- d3.rebind-将一个对象的方法绑定到另一个对象上。
- d3.dispatch-创建一个定制的事件。
- dispatch.on-添加或移除一个事件监听器。对一个事件可添加多个监听器。
- dispatch.type-触发事件。其中‘type'为要触发的事件的名称。
d3.scale(Scales)
定量变换(Quantitative)
- d3.scale.linear-创建一个线性定量变换。(建议参考源码以深入理解各种变换。)
- linear-输入一个定义域的值,返回一个值域的值。
- linear.invert-反变换,输入值域值返回定义域值。
- linear.domain-get或set定义域。
- linear.range-get或set值域。
- linear.rangeRound-设置值域,并对结果取整。
- linear.interpolate-get或set变换的插值函数,如将默认的线性插值函数替换成取整的线性插值函数d3_interpolateRound。
- linear.clamp-设置值域是否闭合,默认不闭合。当值域闭合时,如果插值结果在值域之外,会取值域的边界值。如值域为[1,2],插值函数的计算结果为3,如果不闭合,最终结果为3;如果闭合,最终结果为2。
- linear.nice-扩展定义域范围使定义域更规整。如[0.20147987687960267,0.996679553296417]变成[0.2,1]。
- linear.ticks-从定义域中取出有代表性的值。通常用于坐标轴刻度的选取。
- linear.tickFormat-获取格式转化函数,通常用于坐标轴刻度的格式转化。如:varx=d3.scale.linear().domain([-1,1]);console.log(x.ticks(5).map(x.tickFormat(5,“+%”)));//["-100%","-50%","+0%","+50%","+100%"]
- linear.copy-从已有的变换中复制出一个变换。
- d3.scale.sqrt-创建一个求平方根的定量转换。
- d3.scale.pow-创建一个指数变换。(可参考linear对应函数的注释)
- pow-输入一个定义域的值,返回一个值域的值。
- pow.invert-反变换,输入值域值返回定义域值。
- pow.domain-get或set定义域。
- pow.range-get或set值域。
- pow.rangeRound-设置值域,并对结果取整。
- pow.interpolate-get或set变换的插值函数。
- pow.clamp-设置值域是否闭合,默认不闭合。
- pow.nice-扩展定义域范围使定义域更规整。
- pow.ticks-从定义域中取出有代表性的值。通常用于坐标轴刻度的选取。
- pow.tickFormat-获取格式转化函数,通常用于坐标轴刻度的格式转化。
- pow.exponent-get或set指数的幂次。默认为1次幂。
- pow.copy-从已有的变换中复制出一个变换。
- d3.scale.log-创建一个对数变换。(可参考linear对应函数的注释)
- log-输入一个定义域的值,返回一个值域的值。
- log.invert-反变换,输入值域值返回定义域值。
- log.domain-get或set定义域。
- log.range-get或set值域。
- log.rangeRound-设置值域,并对结果取整。
- log.interpolate-get或set变换的插值函数。
- log.clamp-设置值域是否闭合,默认不闭合。
- log.nice-扩展定义域范围使定义域更规整。
- log.ticks-从定义域中取出有代表性的值。通常用于坐标轴刻度的选取。
- log.tickFormat-获取格式转化函数,通常用于坐标轴刻度的格式转化。
- log.copy-从已有的变换中复制出一个变换。
- d3.scale.quantize-创建一个quantize线性变换,定义域为一个数值区间,值域为几个离散值。
- quantize-输入数值,返回离散值。如:varq=d3.scale.quantize().domain([0,1]).range(['a','b','c']);//q(0.3)===‘a',q(0.4)===‘b',q(0.6)===‘b',q(0.7)==='c;
- quantize.invertExtent-返回得到某个离散值的值域范围。//q.invertExtent(‘a')的结果为[0,0.3333333333333333]
- quantize.domain-get或set变换的定义域。
- quantize.range-get或set变换的值域。
- quantize.copy-从已有的变换中复制出一个变换。
- d3.scale.threshold-构建一个threshold(阈值)线性变换。定义域为分隔值数值序列,值域为离散值。它与quantize的区别是quantize指定的值域为一个区间,然后均分这个区间为多个小区间,以对应各离散值。threshold则指定各小区间的边界分隔值。示例:vart=d3.scale.threshold().domain([0,1]).range(['a','b','c']);t(-1)===‘a';t(0)===‘b';t(0.5)===‘b';t(1)===‘c';t(1000)===‘c';t.invertExtent(‘a');//returns[undefined,0]t.invertExtent(‘b');//returns[0,1]t.invertExtent(‘c');//returns[1,undefined]
- threshold-输入数值,返回离散值。
- threshold.invertExtent-输入离散值,返回数值。
- threshold.domain-get或set变换的定义域。
- threshold.range-get或set变换的值域。
- threshold.copy-从已有的变换中复制出一个变换。
- d3.scale.quantile-构建一个quantile线性变换。使用方法与quantize完全类似,区别是quantile根据中位数来分隔区间,quantize根据算数平均值来分隔区间。example
- quantile-输入数值,返回离散值。
- quantile.invertExtent-输入离散值,返回数值。
- quantile.domain-get或set变换的定义域。
- quantile.range-get或set变换的值域。
- quantile.quantiles-获得quantile变换的分隔值。示例:varq=d3.scale.quantile().domain([0,1]).range(['a','b','c']);q.quantiles()returns[0.33333333333333326,0.6666666666666665]
- quantile.copy-从已有的变换中复制出一个变换。
- d3.scale.identity-构建一个identity线性变换。特殊的linear线性变换,此变换定义域和值域相同,只在一些d3内部的axis或brush模块中用到。
- identity-identity线性变换函数。返回输入值。
- identity.invert-和identity函数相同,返回输入值。
- identity.domain-get或set变换的定义域。
- identity.range-get或set变换的值域。
- identity.ticks-从定义域中取出有代表性的值。通常用于坐标轴刻度的选取。
- identity.tickFormat-获取格式转化函数,通常用于坐标轴刻度的格式转化。
- identity.copy-从已有的变换中复制出一个变换。
序数变换(Ordinal)
- d3.scale.ordinal-构建一个ordinal变换对象。ordinal变换的输入定义域和输出值域都是离散的。而quantitative变换的输入定义域是连续的,这是两者最大的不同。
- ordinal-输入一个离散值,返回一个离散值。不在当前定义域中的输入值会自动加入定义域。
- ordinal.domain-get或set变换的定义域。
- ordinal.range-get或set变换的值域。
- ordinal.rangePoints-用几个离散点来分割一个连续的区间。详情请看链接中的图例。
- ordinal.rangeBands-用几个离散区间来分割一个连续的区间。详情请看链接中的图例。
- ordinal.rangeRoundBands-用几个离散区间来分割一个连续的区间,区间边界和宽度会取整。详情请看链接中的图例。
- ordinal.rangeBand-获取离散区间的宽度。
- ordinal.rangeExtent-获取输出域的最小最大值。
- ordinal.copy-从已有的变换中复制出一个变换。
- d3.scale.category10-用10种颜色构建一个ordinal变换。
- d3.scale.category20-用20种颜色构建一个ordinal变换。
- d3.scale.category20b-用另外20种颜色构建一个ordinal变换。
- d3.scale.category20c-用另外20种颜色构建一个ordinal变换。
d3.svg(SVG)
Shapes
- d3.svg.line-创建一个线段生成器.
- line-在折线图里生成一段折线.
- line.x-设置或获取x轴访问器.
- line.y-设置或获取y轴访问器
- line.interpolate-设置或获取插值模式.
- line.tension-获取或设置曲线张力访问器(cardinalsplinetension).
- line.defined-定义线条在某一点是否存在.
- d3.svg.line.radial-创建辐射线生成器.
- line-生成分段的线性曲线,用于纬度线/雷达线图表.
- line.radius-获取或设置radius访问器.
- line.angle-获取或设置angle访问器.
- line.defined-设置或获取线条定义存取器.
- d3.svg.area-创建一个新的区域生成器.
- area-生成一个线性的区域,用于区域图表.
- area.x-获取或设置x坐标的访问器.
- area.x0-获取或设置x0坐标(基线)的访问器.
- area.x1-获取或设置x1坐标(背线)的访问器.
- area.y-获取或设置y坐标的访问器.
- area.y0-获取或设置y0坐标(基线)的访问器.
- area.y1-获取或设置y1坐标(背线)的访问器.
- area.interpolate-获取或设置插值模式.
- area.tension-获取或设置张力访问器(thecardinalsplinetension).
- area.defined-判断获取或定义区域定义存取器.
- d3.svg.area.radial-创建新的区域生成器.
- area-生成分段的线性区域,用于纬度/雷达图表.
- area.radius-获取或设置radius访问器.
- area.innerRadius-获取或设置内部的radius(基线)访问器.
- area.outerRadius-获取或设置外部的radius(背线)访问器.
- area.angle-获取或设置angle访问器.
- area.startAngle-获取或设置内部的angle(基线)访问器.
- area.endAngle-获取或设置外部的angle(背线)访问器.
- area.defined-判断获取或定义区域定义存取器.
- d3.svg.arc-创建弧度生成器.
- arc-生成一个线性弧度,用于饼图或甜甜圈图.
- arc.innerRadius-获取或设置内部的半径访问器.
- arc.outerRadius-获取或设置外部的半径访问器.
- arc.startAngle-获取或设置起始角度访问器.
- arc.endAngle-获取或设置结束角度访问器.
- arc.centroid-计算弧的重心点.
- d3.svg.symbol-创建符号生成器.
- symbol-生成指定的符号,用于散列图.
- symbol.type-获取或设置符号类型访问器.
- symbol.size-获取或设置符号尺寸(insquarepixels)访问器.
- d3.svg.symbolTypes-被支持的符号类型数组.
- d3.svg.chord-创建新的弦生成器.
- chord-生成一个二次贝塞尔曲线连接两个弧,用于弦图.
- chord.radius-获取或设置弧半径访问器.
- chord.startAngle-获取或设置弧起始角度访问器.
- chord.endAngle-获取或设置弧结束角度访问器.
- chord.source-获取或设置源弧度访问器.
- chord.target-获取或设置目标弧度访问器.
- d3.svg.diagonal-创建新的斜线生成器.
- diagonal-生成一个二维贝塞尔连接器,用于节点连接图.
- diagonal.source-获取或设置源点访问器.
- diagonal.target-获取或设置目标点访问器.
- diagonal.projection-获取或设置一个可选的点变换器.
- d3.svg.diagonal.radial-创建一个新的斜线生成器.
- diagonal-创建一个二维贝塞尔连接器,用于节点连接图.
坐标轴(Axes)
- d3.svg.axis-创建一个axis生成器。
- axis-正式在页面中生成axis。
- axis.scale-get或set坐标轴的scale尺度变换,该尺度变换设定了数值和像素位置的转换规则。
- axis.orient-get或set坐标轴刻度方向。
- axis.ticks-控制坐标轴刻度的产生方式。
- axis.tickValues-设置特定的坐标轴的值。
- axis.tickSize-指定坐标轴上刻度线的像素长度。
- axis.innerTickSize-get或set坐标轴小刻度线的像素长度。
- axis.outerTickSize-get或set坐标轴大刻度线的像素长度。
- axis.tickPadding-指定坐标轴刻度和刻度文字之间的像素距离。
- axis.tickFormat-设置刻度文字的格式。
Controls
- d3.svg.brush-点击拖拽选择一个二维区域。
- brush-在页面中某个区域中正式绑定一个brush。
- brush.x-get或setbrush的x变换,用于水平方向的拖拽。
- brush.y-get或setbrush的y变换,用于垂直方向的拖拽。
- brush.extent-get或setbrush的选取范围(extent)。
- brush.clear-设置brush的选取范围(extent)为空。
- brush.empty-判断brush的选取范围(extent)是否为空。
- brush.on-get或setbrush的事件监听器。可监听3种事件:brushstart,brush,brushend。
- brush.event-通过程序触发监听事件,在通过程序设置extent后使用。
d3.time(Time)
时间格式转换(TimeFormatting)
- d3.time.format-创建基于某种时间格式的本地时间格式转换器。
- format-将一个date对象转换成特定时间格式的字符串。
- format.parse-将特定时间格式的字符串转换成date对象。
- d3.time.format.utc-创建基于某种时间格式的世界标准时间(UTC)格式转换器。
- d3.time.format.iso-创建基于某种时间格式的ISO世界标准时间(ISO8601UTC)格式转换器。
时间变换(TimeScales)
- d3.time.scale-创建一个线性时间变换,定义域为数值区间,值域为时间区间。常用于时间坐标轴的创建。详情可参考d3.scale.linear。
- scale-输入为一个数值,返回为一个时间。
- scale.invert-反变换,输入时间返回数值。
- scale.domain-get或set变换的定义域。
- scale.nice-扩展定义域范围使定义域更规整。
- scale.range-get或set变换的值域。
- scale.rangeRound-设置值域,并对结果取整。
- scale.interpolate-get或set变换的插值函数,如将默认的线性插值函数替换成指数插值函数。
- scale.clamp-设置值域是否闭合,默认不闭合。当值域闭合时,如果插值结果在值域之外,会取值域的边界值。详情参考linear.clamp。
- scale.ticks-从定义域中取出有代表性的值。通常用于坐标轴刻度的选取。
- scale.tickFormat-获取格式转化函数,通常用于坐标轴刻度的格式转化。
- scale.copy-从已有的时间变换中复制出一个变换。
TimeIntervals
- d3.time.interval-返回一个对于本地时间时间间隔器.
- interval-效果同interval.floor方法.
- interval.range-返回指定区间内日期.
- interval.floor-下舍入到最近的间隔值.
- interval.round-上舍入或下舍入到最近的间隔值.
- interval.ceil-上舍入到最近的间隔值.
- interval.offset-返回指定时间间隔的日期偏移量.
- interval.utc-返回对应的UTC时间间隔.
- d3.time.day-返回指定时间基于天起始的时间(默认起始是12:00am).
- d3.time.days-返回指定时间区间和间隔条件的基于天的所有时间,效果同day.range.
- d3.time.dayOfYear-计算指定时间在年中的天数.
- d3.time.hour-返回指定时间基于小时起始的时间(e.g.,1:00AM).
- d3.time.hours-返回指定时间区间和间隔条件的基于小时的所有时间,效果同hour.range.
- d3.time.minute-返回指定时间基于分钟起始的时间(e.g.,1:02AM).
- d3.time.minutes-返回指定时间区间和间隔条件的基于分钟的所有时间,效果同minute.range.
- d3.time.month-返回指定时间基于月起始的时间(e.g.,February1,12:00AM).
- d3.time.months-返回指定时间区间和间隔条件的基于月的所有时间,效果同month.range.
- d3.time.second-返回指定时间基于秒起始的时间(e.g.,1:02:03AM).
- d3.time.seconds-返回指定时间区间和间隔条件的基于秒的所有时间,效果同second.range.
- d3.time.sunday-返回指定时间基于Sunday起始的时间(e.g.,February5,12:00AM).
- d3.time.sundays-返回指定时间区间和间隔条件的基于sunday的所有时间,效果同sunday.range.
- d3.time.sundayOfYear-计算以sunday为基点的指定时间在一年中的周数.
- d3.time.monday-everyMonday(e.g.,February5,12:00AM).
- d3.time.mondays-aliasformonday.range.
- d3.time.mondayOfYear-computesthemonday-basedweeknumber.
- d3.time.tuesday-everyTuesday(e.g.,February5,12:00AM).
- d3.time.tuesdays-aliasfortuesday.range.
- d3.time.tuesdayOfYear-computesthetuesday-basedweeknumber.
- d3.time.wednesday-everyWednesday(e.g.,February5,12:00AM).
- d3.time.wednesdays-aliasforwednesday.range.
- d3.time.wednesdayOfYear-computesthewednesday-basedweeknumber.
- d3.time.thursday-everyThursday(e.g.,February5,12:00AM).
- d3.time.thursdays-aliasforthursday.range.
- d3.time.thursdayOfYear-computesthethursday-basedweeknumber.
- d3.time.friday-everyFriday(e.g.,February5,12:00AM).
- d3.time.fridays-aliasforfriday.range.
- d3.time.fridayOfYear-computesthefriday-basedweeknumber.
- d3.time.saturday-everySaturday(e.g.,February5,12:00AM).
- d3.time.saturdays-aliasforsaturday.range.
- d3.time.saturdayOfYear-computesthesaturday-basedweeknumber.
- d3.time.week-aliasforsunday.
- d3.time.weeks-aliasforsunday.range.
- d3.time.weekOfYear-aliasforsundayOfYear.
- d3.time.year-返回指定时间基于年起始的时间(e.g.,January1,12:00AM).
- d3.time.years-返回指定时间区间和间隔条件的所有时间,效果同year.range.