对于多系列d3情节,我试图在“零”处获得y-tick。我的x轴是时间刻度,y轴是一些随机数据刻度。这是我的傻瓜
http://plnkr.co/edit/emOKcxrHP7gU1U1l0Mff?p=preview
如果我只是在y-tick值上加零,它就不起作用(即在下面的函数中,如果我说 var yTickValues = [0] )并且它会弄乱我的情节(绘制)另一个x轴低于现有的x轴
function getYTickValues(){
var deltaY = Math.round((maxY - minY)/(yTickCount-1));
var yTickValues = [];
for(var i=0;i<yTickCount;i++){
yTickValues.push(((minY + i * deltaY) * 100) / 100);
};
return yTickValues;
}
我无法弄清楚如何解决这个问题,所以我总能得到一个y-tick为零。我想不要触摸我的minX,maxX,minY和maxY,因为域范围比例将改变以适应零y-tick。
感谢任何帮助。
答案 0 :(得分:0)
将y域更改为从0开始:
y.domain([0, maxY]);
然后如上所述在yTickValues
数组中包含0:
var yTickValues = [0];
数据值仍然保持在minY
和maxY
之间,但y轴运行为0.我认为问题是什么?
我还对getYTickValues()
函数进行了一些更改,以均匀地分隔剩余的y
刻度值。见http://plnkr.co/edit/q6XnujIyB8JdzN8AA88j?p=preview