【发布时间】:2017-07-17 18:40:02
【问题描述】:
我一直在使用 Mike Bostock 的堆积条形图(此处:https://bl.ocks.org/mbostock/4679202)。
我已经成功地进行了一些修改,但我坚持的是尝试添加一个带有刻度和适当缩放值的 y 轴。
我以为只要用这个就可以了:
var yAxisRight = d3.svg.axis().scale(y2) //define ticks
.orient("right").ticks(5);
但是,这会导致只有一组堆栈的值用于整个 Y 轴。这会导致不正确的比例。需要使用所有堆栈 COMBINED 的范围的值来确定我认为的值的范围。
有没有一种我想念的简单方法来做到这一点?对所有列的范围求和。
如果不是,我将如何编写一个函数来根据所有 4 列中的值设置范围?
这是我现在拥有的工作 JSfiddle(这是不正确的): https://jsfiddle.net/1jhm7ths/
【问题讨论】:
-
带有您的代码的 plnkr 或 jsFiddle 将有助于更好地理解您的问题。作为一个疯狂的盲目猜测,我会说这与你的规模的
domain有关...... -
@HuguesStefanski 这和原来的很相似,但是我添加了一个链接让你看看我到底在做什么。
-
可以看到例子中,Y轴范围设置为0到14000。但是,它只是从蓝色列中提取这些数字,范围从 0 到 14,000。随着积木的堆叠,它应该从 0 缩放到 ~40,000。