我正在建立一个绘制城市地图的地图,其中城市点的半径由人口调整。我们希望只有较大的城市一目了然。我已经尝试过使用对数刻度,但这会让我反过来迅速扩大半径。
我尝试过使用log.invert(),但除了最小的数字之外的任何东西都会产生无穷大的结果。
作为一个注释,我真的不知道对数或其他尺度如何以数学方式工作。我只将它们应用到我的可视化中。
简化我的代码: var radiusScale = d3.scale.log()。domain([1,8000000])。range([1,3])
编辑: 我最终需要做的是使用d3.scale.sqrt()然后调整域以排除异常值大的引用,这使得域的高端从8,000,000降至800,000。这给了我们城市缓慢扩大的影响,随着规模的加快;其中对数与减速快速缩放相反。