我正在使用X時間軸在一個非常規的圖上工作。 軸代碼是非常標準:D3時間軸 - 爲什麼刻度標記在默認情況下似乎不可見?
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在tickmarks上設置筆劃...但爲什麼他們在第一個地方看不見?我GOOGLE了四周,但沒有發現任何指示刻度標記默認筆觸顏色...
非常感謝任何提示, wwwald
對我來說,即使將'stroke'設置爲非白色仍然不會顯示任何東西:(我可以看到tick標記存在於DOM樹中。 – Ciwan
@Ciwan確保您的svg的大小足夠大以容納在我的情況下,我沒有指定寬度/高度attrs,並且我的svg默認爲300x150。由於我的軸被轉換爲(0,400),所以即使元素位於DOM中也不可見 – Pakman