我希望能够在给定现有d3图表的情况下确定y轴范围。
我试过了:
d3.select(chartToUpdate).select('svg').select('g.axis').extent
和
d3.select(chartToUpdate).select('svg').select('x.axis').extent
以及上述的众多变种但没有成功。有没有办法做到这一点?
谢谢,
答案 0 :(得分:0)
在D3中创建轴时,通常将其基于Scale。例如,线性标度可以是:
var scale = d3.scale.linear()
.domain([0, 100000]) // Input Range
.range([0, 100]); // Output Range (e.g. 100 svg units wide)
var axis = d3.svg.axis().scale(scale);
因此,这意味着您应该能够在任何时候调用scale.domain()
来获取可视化的输入范围。请注意,通常你会动态驱动它,所以你可能有:
scale.domain([0, d3.max(myNumberArray)]);