我遇到了一个非常有趣的问题,
我正在创建一个折线图比较多个航班的预订和取消,直到出发点。所以 X 轴必须显示只有几个小时的倒计时,如 72 - 48 - 24 - 12 - 6 - 0,我如何使用 d3s 可用的线性刻度和时间刻度来实现这些刻度。?
我目前正在使用线性恐慌,但它的基数为 10,所以不会像预期的那样工作
使用时间刻度时显示日期,但不应绑定日期,只需显示航班起飞前 144 小时。
您的帮助将不胜感激。
提前致谢
我遇到了一个非常有趣的问题,
我正在创建一个折线图比较多个航班的预订和取消,直到出发点。所以 X 轴必须显示只有几个小时的倒计时,如 72 - 48 - 24 - 12 - 6 - 0,我如何使用 d3s 可用的线性刻度和时间刻度来实现这些刻度。?
我目前正在使用线性恐慌,但它的基数为 10,所以不会像预期的那样工作
使用时间刻度时显示日期,但不应绑定日期,只需显示航班起飞前 144 小时。
您的帮助将不胜感激。
提前致谢
我找到了解决方案
我不确定它是否正确,但它对我有用,基本上我们必须更改刻度的格式以表示分钟而不是十进制数字
这就是我所做的
创建线性刻度以将十进制转换为分钟
var dectomin = d3.scale.linear().rangeRound([0 , 60]).domain([0,1]);
并使用 tickFormat 函数格式化轴组件上的刻度标签
var chartXAxis = d3.svg.axis().scale(chartXScale).orient("bottom")
.tickFormat(function(n){
if(n % 1 === 0) {
return n;
} else {
var f = Math.floor(n);
var d = n - f;
return f + ":" + chartXScaleTime(d);
}
});
谢谢祈祷者这个想法