2016-09-24 6 views
0

timeseries軸を使用してポイントの単純な折れ線グラフを作成しようとしていますが、グラフがレンダリングされず、ブラウザコンソールにエラー:c3js:キャッチされていないTypeError:c.forEachが関数ではありません

c3.min.js Uncaught TypeError: c.forEach is not a function

ここに私のjavascriptです:

D3およびC3のための非縮小さソースを使用し、以下のブラウザのコンソールエラーを与える
var chart = c3.generate({ 
    bindto: '#chart', 
    data: { 
    json: [ 
     {date: "2016-01-01", pageviews: 1}, 
     {date: "2016-01-02", pageviews: 2}, 
     {date: "2016-01-03", pageviews: 3}, 
     {date: "2016-01-04", pageviews: 4}, 
     {date: "2016-01-05", pageviews: 5}], 
    keys: { 
     x: 'date', 
     value: 'pageviews' 
    } 
    }, 
    axis: { 
    x: { 
     type: 'timeseries', 
     tick: { 
     format: '%Y-%m-%d' 
     } 
    } 
    } 
}); 

そしてhere's a jsfiddleUncaught TypeError: targetKeys.forEach is not a function

答えて

0

data.keys.valueアレイを期待しているので、単純にそうような角括弧で'pageviews'ラップ:

var chart = c3.generate({ 
    bindto: '#chart', 
    data: { 
    json: [ 
     {date: "2016-01-01", pageviews: 1}, 
     {date: "2016-01-02", pageviews: 2}, 
     {date: "2016-01-03", pageviews: 3}, 
     {date: "2016-01-04", pageviews: 4}, 
     {date: "2016-01-05", pageviews: 5}], 
    keys: { 
     x: 'date', 
     value: ['pageviews']  // needs to be an array 
    } 
    }, 
    axis: { 
    x: { 
     type: 'timeseries', 
     tick: { 
     format: '%Y-%m-%d' 
     } 
    } 
    } 
}); 

Working jsfiddle for completeness

関連する問題