d3 日期轴“四舍五入”

时间:2020-12-30 04:27:03

标签: d3.js

我正在尝试使用带有日期的 X 轴。不幸的是,我的数据范围很小,导致日期多次显示为 xTick。有没有办法强制它只显示“每个日期”一次作为勾号。

例如,我不想多次将 12/29/2020 视为勾号。

1 个答案:

答案 0 :(得分:1)

取决于您的 d3 版本,但 d3.timeDay 可能是 what you need

var input = [new Date(1999, 11, 31, 0),new Date(2000, 0, 1, 0), new Date(2000, 0, 1, 2), new Date(2000, 0, 1, 3), new Date(2000, 0, 2, 2), new Date(2000, 0, 2, 5)];
console.log(input);

var x = d3.scaleTime().domain(input);

var xTick = x.ticks(d3.timeDay.every(1));
console.log(xTick)
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.7.0/d3.min.js"></script>