我正在使用 X 时间轴制作一个非常规则的图表。轴代码非常标准:
var xScale = d3.time.scale()
.domain([tlState.startdate.getTime(), tlState.enddate.getTime()])
.range([0, width]);
var xHourAxis = d3.svg.axis()
.scale(xScale)
.ticks(d3.time.hours, 6)
.tickFormat(d3.time.format("%_Hh"))
.tickSize(5,1)
.orient('bottom');
root.append('g')
.attr('class', 'axis')
.attr("transform", "translate(" + 0 + "," + height + ")")
.call(xHourAxis);
这些tsState.*
函数只返回轴的开始/结束日期。我的问题:轴刻度标签可见,但我看不到刻度线。它们显然存在于 DOM 树 ( <line y2="5" x2="0"></line>
) 中,但只有当我将它们的“stroke”属性显式设置为非白色时,它们才会变得不可见。
我可以使用 CSS 轻松解决这个问题,在刻度线上设置笔画……但是为什么它们一开始是不可见的呢?我已经用谷歌搜索了,但没有发现任何指示刻度线的默认笔触颜色......
非常感谢任何提示,wwwald