Javascript 从最小日期开始添加一个月的填充
首先,我想动态地处理任何类型的时态数据集的日期范围。这是我通过以下方式实现的:Javascript 从最小日期开始添加一个月的填充,javascript,datetime,d3.js,Javascript,Datetime,D3.js,首先,我想动态地处理任何类型的时态数据集的日期范围。这是我通过以下方式实现的: var earliest = d3.min(data.map(d=>d.date)); var latest = d3.max(data.map(d=>d.date)); 然后我想添加一个月的填充,这样数据就不会像挂在边缘上那样不稳定了。所以我试着: var dateMin = earliest; var dateMax = latest; dateMin.setDate(dateMin.getMon
var earliest = d3.min(data.map(d=>d.date));
var latest = d3.max(data.map(d=>d.date));
然后我想添加一个月的填充,这样数据就不会像挂在边缘上那样不稳定了。所以我试着:
var dateMin = earliest;
var dateMax = latest;
dateMin.setDate(dateMin.getMonth()-30);
dateMax.setDate(dateMax.getMonth()+30);
虽然我复制了它,但标尺似乎仍然记得最初的最早的值。也就是说,所有这一切最终都是将我的数据点更改为更早的日期,这意味着结果是不变的;它仍然悬在边缘
问题:
有没有一种简单的方法可以用来计算刻度,这样就可以多填充30天?关于您的问题:最早的
和最早的
指向同一个对象。改变一个会改变另一个:
var最早=新日期();
var dateMin=最早;
dateMin.setDate(dateMin.getMonth()-30);
控制台日志(最早)代码>