D3js X轴舍入某些浏览器宽度的刻度

时间:2018-07-24 11:27:46

标签: d3.js

我使用的是d3js v5,折线图上X轴的坐标刻度为顺数。

this.x = scaleOrdinal()
  .domain(axisXDataTruncated.labels)
  .range(axisXDataTruncated.range);

当我使用此轴绘制x轴时:

 this.root
    .append('g')
    .attr('class', 'x axis')
    .attr('transform', `translate(0, ${this.height})`)
    .call(
      axisBottom(this.x).tickFormat((data: string | number) =>
        formatter(
          this.graphDataMerged.lineChartOptions.axis.x.format,
          data,
          this.graphDataMerged.lineChartOptions.axis.x.currency
        )
      )
    );

我正在使用字符串标签([[Week 1'。'Week 2',...'Week 26']]作为标签。

当标签数量很多时,x轴将丢弃最后的标签并将作物裁剪为特定值。例如,具有26个值。最后一个标签显示为25,显示在x轴的最末端。

因为图表的点和线包含位置26的值,所以轴和点不匹配。

如果我扩展浏览器的宽度,则会神奇地显示x轴的最后一个值。

我可能做错了什么?是v5中的错误吗?

0 个答案:

没有答案