如何在 d3.scale.ordinal() 中指定域?
Posted
技术标签:
【中文标题】如何在 d3.scale.ordinal() 中指定域?【英文标题】:How do I specify domain in d3.scale.ordinal() ? 【发布时间】:2012-05-04 07:05:18 【问题描述】:var W = 100;
var H = 200;
var data = [v:4, v:8, v:15, v:16, v:23, v:42];
var x = d3.scale.linear().domain([0, max_x]).range([0, W]);
var y = d3.scale.ordinal().domain([0, 1, 2, 3, 4, 5]).rangeBands([0, H]);
如何在不输入数据的情况下自动枚举数据域,例如 0、1、2、3
我尝试过domain(data)
和domain([0, data.length])
,但我需要它们之间的所有值。
【问题讨论】:
【参考方案1】:如果您希望序数尺度的域作为数据的索引,请使用d3.range。例如,d3.range(data.length)
返回[0, 1, 2, 3, 4, 5]
。
【讨论】:
以上是关于如何在 d3.scale.ordinal() 中指定域?的主要内容,如果未能解决你的问题,请参考以下文章