2016-10-20 111 views
0

我無法在x軸上的月份中繪製折線圖,​​當我使用json數據中的日期字段時,那麼從該日期開始使用月份時它不會繪製和控制檯沒有顯示任何錯誤,我在這裏給搗鼓那情景與JSON數據http://jsfiddle.net/6zrMc/7折線圖無法在x軸上用月份繪製

data.forEach(function(d) { 
    d.date =parseDate(d.date); 
    d.close = +d.close; 
}); 
var valueline = d3.svg.line() 
.x(function(d) { return x(d.date); }) 
.y(function(d) { return y(d.close); });  
x.domain(d3.extent(data, function(d) { return d.date; })); 
y.domain([0, d3.max(data, function(d) { return d.close; })]); 

此代碼工作正常,但我在小提琴已經表明,不與一個月類型只工作 請任何人都建議我上這個。

回答

0

在x-scale(這是一個時間尺度)中使用d.activemonth。所以d.activemonth需要是一個日期對象。定義parseMonth的方式(不包括.parse)它將日期對象解析爲字符串。所以

parseMonth(new Date(d.date)) 

將返回字符串Octx(d.activemonth)x('Oct')這是無效的,因爲X只需要日期的對象。該解決方案是改變

d.activemonth = parseMonth(new Date(d.date)); 

爲有效日期對象,例如

d.activemonth = new Date(d.date); 

(其將是一樣d.date)。

+0

我不明白,請你能糾正在小提琴,所以我可以有明確的想法在它 – sourav78611

+0

http://jsfiddle.net/6zrMc/11/我只改變了行79. – Cleared

+0

好我明白這一個,我有也嘗試過,但實際上結果就像星期四,我不想要,它應該只在X軸上的月份名稱,並計數那是我再問你一次 – sourav78611