D3 parseDate函数未返回Month的Month

时间:2017-12-14 20:02:31

标签: d3.js

我目前有一个2位数的数组:

var dataMonths = ['01','02','03','04','05','06','07','08','09','10','11','12'];

parseDate函数:

var parseDate = d3.timeParse("%m");

当然还有我的D3比例生成器

var x = d3.scaleTime()
  .domain([
    d3.min(dataMonths, function(d){ return parseDate(d); }),
    d3.max(dataMonths, function(d){ return parseDate(d); })
  ])
  .range([0, width]);

无论出于何种原因,这是输出1900为“01”而不是1月。所有其他月份都是正确的。您可以在图表图像的第一个位置看到1900:

You can see the 1900 in the first position in the chart image

1 个答案:

答案 0 :(得分:0)

根据Ryan的推荐添加.tickFormat()会强制D3显示您想要的任何日期元素。

  

var xAxis = d3.axisBottom(x).tickFormat(d3.timeFormat(“%B”));

感谢您的帮助!