D3.js 使用日期作为数字,但在UI中将其格式化为日期
让我们举个例子 它将X刻度定义为时间刻度D3.js 使用日期作为数字,但在UI中将其格式化为日期,d3.js,d3fc,D3.js,D3fc,让我们举个例子 它将X刻度定义为时间刻度 const xScale = d3 .scaleTime() .domain(fc.extentDate().accessors([d => d.date])(data)); 为了防止缩放处理程序中出现多个刻度到日期的转换,我希望始终使用数字,但保持UI将这些数字显示为日期。所以,我把上面的代码改成线性比例 const xScale = d3 .scaleLinear() .domain(fc.extentLin
const xScale = d3
.scaleTime()
.domain(fc.extentDate().accessors([d => d.date])(data));
为了防止缩放处理程序中出现多个刻度到日期的转换,我希望始终使用数字,但保持UI将这些数字显示为日期。所以,我把上面的代码改成线性比例
const xScale = d3
.scaleLinear()
.domain(fc.extentLinear().accessors([d => d.date.getTime()])(data));
一切正常,但现在我有一个X刻度,显示的是数字而不是日期。问题是,如何添加映射器或格式化程序,将这些数字显示为UI中的日期?我看到了一些d3.1格式的示例,但不确定如何在d3fc中应用它
您将比例提供给D3FC笛卡尔图表,然后该图表将这些比例与它为您创建的轴进行耦合 当图表以
X
和Y
前缀显示X轴和Y轴的属性时。因此,如果要更改X轴的勾号格式(通常通过tickFormat
属性执行),请执行以下操作:
var chart = fc.chartCartesian(
d3.scaleLinear(),
d3.scaleLinear()
)
.xTickFormat(/* ... formatter goes here */);