我正在尝试使用2个日期之间的时间范围数据将刻度添加到x轴。我只有2个日期,并且按预期绘制了主要刻度。并且d3希望数据会在V4中产生较小的滴答声。
我正在使用d3 V4和s3.subDivide()在V4中已贬值。有没有类似细分的方法或方法,它可以在不提供数据的情况下绘制较小的刻度线?
我的代码:
let x = d3.scaleTime().rangeRound([0, width]);
let g = svg.append("g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");
x.domain([minDate, maxDate]);
g.append("g")
.attr("class", "axis x_axis")
.attr("transform", "translate(0," + height + ")")
.call(d3.axisBottom(x));
以上代码绘制的可视化效果如下所示。
我想要没有数据的小刻度下面的结果。
答案 0 :(得分:0)
获得期望结果的一种方法可能是:
j = 100
多格式功能定义如下:
var xAxis = d3
.axisBottom(x)
.tickFormat((d, i) => (i % 2 ? multiFormat(d) : "")) // show the tick value in even index numbers for the axis
.ticks(50); // set an optional number of ticks to display