我有这个交互式图表here。由于其数据根据所选时间段而变化,我希望设置日期范围从11月10日到7月14日,无论数据如何。我知道我必须在x轴上使用overrideMax,但我不能让它工作。我想这是日期格式化的问题。我尝试过的每一个组合都会得到以下结果:
什么是正确的格式?非常感谢。
编辑:非常感谢你的快速反应,约翰。现在它正在运作。我越来越喜欢Dimple了!我对此图表有另一个问题。有没有办法安排系列的绘制顺序?我希望'Previsión'被送回去。现在它取决于时间段。
编辑2:基于this其他问题,我想我找到了一个解决方案。在绘制图表后延迟50ms,我简单地擦除我希望在前面的圆圈和路径,然后将它们附加到图表svg对象。
setTimeout(function () {
var datoCircles = svg.selectAll('circle[id*=Dato]:not([id*=futuro])');
var prevCircles = svg.selectAll('circle[id*=Prev]');
var prevPaths = svg.selectAll('path[class*=Prev]');
datoCircles.remove();
prevCircles.remove();
prevPaths.remove();
// Convertimos la seleción d3 a objetos jQuery
$(svg.selectAll('svg > g')[0])
.append($(prevPaths[0]))
.append($(prevCircles[0]))
.append($(datoCircles[0]));
}, 50);
答案 0 :(得分:1)
需要使用JavaScript日期对象进行设置,因为JavaScript中的本机日期解析会导致跨浏览器问题,我建议使用d3方法:
x.overrideMax = d3.time.format("%Y-%m-%d").parse("2014-05-09");
使用这种方法,您可以使用适合您的日期格式。