2017-09-14 7 views
1

this exampleのc3.jsタイムズチャートでカスタムカラーを設定しようとしています。C3.jsタイムズチャートのカスタムカラー

colors: {data1:'#0000'} 

または:

colors: {'data1':'#0000'} 

var datatest1 = ['data1', 30, 200, 100, 400, 150, 250]; 

色プロパティは、このようにアクセスすることができる:私は配列を持っている場合に、各配列の最初の要素は、データセットを識別するために使用され

ただし、配列の最初の要素を使用してアクセスする場合:

var data1id = datatest1[0]; 

、その後:

colors: {data1id:'#0000'} 

それは失敗します。わからない私がやっても間違った私は、ブラウザでのフィードバックを得るていないよう...ここ

は実施例である:私は(データので、これをやっている

var axis = ['x', '2013-01-01', '2013-01-02', '2013-01-03', '2013-01-04', '2013-01-05', '2013-01-06']; 
var datatest2 = ['data2', 130, 340, 200, 500, 250, 350]; 
var datatest1 = ['data1', 30, 200, 100, 400, 150, 250]; 

var data1id = datatest1[0]; 
var data2id = datatest2[0]; 

var chart = c3.generate({ 
    data: { 
     x: 'x', 
     columns: [ 
      axis, 
      datatest1, 
      datatest2 
     ], 
     colors: { 
      //data1: '#0000', 
      //data2: '#0000' 
      datatest1: '#0000', 
      datatest2: '#0000' 
     } 
    }, 
    axis: { 
     x: { 
      type: 'timeseries', 
      tick: { 
       format: '%Y-%m-%d' 
      } 
     } 
    } 
}); 

----- EDIT 識別子を含む)が動的に生成される。ありがとう

答えて

1

このような色オブジェクトを動的に作成することができます。

var colors = {}; 
colors[datatest1[0]] = '#0000'; 
colors[datatest2[0]] = '#0000'; 

は、この

var chart = c3.generate({ 
    data: { 
     x: 'x', 
     columns: [ 
      axis, 
      datatest1, 
      datatest2 
     ], 
     colors: colors //set colors object created above 
    }, 
    axis: { 
     x: { 
      type: 'timeseries', 
      tick: { 
       format: '%Y-%m-%d' 
      } 
     } 
    } 
}); 

作業コードのようなグラフで設定here