我正在尝试使用d3-js绘制图表。我希望X轴值为[0.25yrs; 0.50yrs; 1yr; 2yrs; 5 yrs; 10yrs; 15yrs; 20yrs; 30 yrs; 50 yrs]
。这可以使用d3的tickValues()
& tickFormat()
功能。但是我需要在0.25,0.50之间保持一定的距离。 1年的蜱虫,因为大多数价值属于这些年份和它们之间的距离越远,减少了绘制圆圈的重叠。
我需要的刻度位置如下:
您可以在上图中看到.01和.02之间的距离。我们怎么能这样做?
答案 0 :(得分:2)
您需要实现一个自定义比例,将您的输入范围映射到此非均匀输出范围。然后你可以将这个比例赋予你的轴,它会相应地绘制刻度。
如果任何东西足够接近你想要的东西(可能是日志刻度?),你可以看看D3提供的刻度,但是如果你找不到任何东西,你别无选择,只能实现自己的。 / p>