我为我的问题创建了一个Plunkr,找到at the link
使用月份值时,我遇到缩放问题。我确信这是一个简单的解决方法。
我的问题的可视化如下(见12月):
简而言之,当在轴和条的更新模式中使用d3.extent时,d3不能正确计算域。它似乎认为它比它小,所以我有一个条目太多,导致一个条挂起,x轴是一个值太长。
我的xScale正常计算:
xScale = d3.time.scale()
.domain(d3.extent(data,function(d){return d.funded_month}))
.rangeRound([0, (w + offsetBar) - (marginleft + marginright)]);
x轴,条形图和文本都在同一个域中工作。
当可视化所有年份时,viz显示正确:
问题是每个相应的可视化中的值数量是不同的(13年对12个月?错误是什么?
答案 0 :(得分:0)
我无法使用现有的库实现简单的解决方案。
因为D3解释“月,年”格式,假设该日是午夜的第一个月,1月至12月仅被视为11个月。
所以我每个月都会创造一个平滑的轴:
2001-01-01,68991364
2001-02-04,554541108
2001-03-07,151123291
2001-04-10,283000000
2001-05-12,8093737
2001-06-15,55718802
2001-07-18,95060100
2001-08-21,78000000
2001-09-23,150000000
2001-10-25,193330000
2001-11-28,59948530
2001-12-31,142424927
我能够在我的轴文本上使用x translate与条形图同步。
Mike Bostock goes further into this issue here.