Javascript d3更新axis域会破坏标签
我正在使用以下代码旋转轴标签的文本:Javascript d3更新axis域会破坏标签,javascript,d3.js,linechart,axis-labels,Javascript,D3.js,Linechart,Axis Labels,我正在使用以下代码旋转轴标签的文本: graph.append('svg:g') .attr('class', 'x axis') .attr('transform', 'translate(0,' + h + ')') .call(xAxis) .selectAll('text') .style('text-anchor', 'end') .attr('dx', '-.8em') .attr('dy', '.15em') .att
graph.append('svg:g')
.attr('class', 'x axis')
.attr('transform', 'translate(0,' + h + ')')
.call(xAxis)
.selectAll('text')
.style('text-anchor', 'end')
.attr('dx', '-.8em')
.attr('dy', '.15em')
.attr('transform', 'rotate(-50),translate(10,10)')
现在我更改axis的域,并希望像这样更新屏幕:
x.domain([ parseDate(data[0].x), parseDate(newValDate)])
graph.select('.x.axis').call(xAxis)
完成此操作后,轴如下所示:
问题:为什么会发生这种行为?我如何解决?
谢谢:)
编辑(关于对LarsKotthoff的评论):这是我提到的跳跃:
每次调用(xAxis)后,您都需要运行代码来旋转标签。为什么您要将attr类设置为
“x轴”
,但当您选择时,您有class:.x.axis
?@hasanovh,因为我必须告诉d3,我选择的是按类,而不是按IDexample@LarsKotthoff这很管用,但没有我希望的那么漂亮。。。我不知道为什么,但10个标签中有2个在重新正确绘制之前“跳跃”10px…这可能是过渡的产物。