[英]D3js Ordinal Axis does not show all the ticks
我在d3中实例化了一个有序刻度并将其关联到一个轴。 然后,将该轴附加到页面上的SVG画布; 这是一个片段:
var arange = [1,2,3,4,5];
var ticks = ['one' , 'two', 'three', 'four', 'five'];
var myScale = d3.scale.ordinal();
myScale.range(arange)
.domain(ticks);
var myAxis = d3.svg.axis()
.scale(myScale)
.orient("bottom");
canvas.append("g")
.attr("class", "time axis")
.attr("transform" , "translate ("+myOrigin[0]+" , "+myOrigin[1]+")")
.call(myAxis);
如果我以后更改比例(添加另一个刻度和相应的范围,即arange = [1,2,3,4,5,6]和ticks = ['one','two','3','four' ,'5','6'])轴的长度正好到达新的范围,但并非所有的刻度都被绘制出来:某些刻度线以某种方式丢失了。
你能启发我吗?
强制D3显示所有标签的唯一方法是将它们明确设置为刻度值。 您的情况如下:
var myAxis = d3.svg.axis()
.scale(myScale)
.tickValues(ticks)
.orient("bottom");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.