2017-02-05 9 views
0

AmChartsを使用してデータを入力しています。私はチャートにトレンドラインを表示しています。トレンドラインのinitialValueとして、値の軸の最大値を設定する方法はありますか?ここでAmChartsのValue Axisの最大値としてtrendLineのinitialValueを設定するにはどうすればよいですか?

var trendLines = [{ 
    "initialValue": 1800, 
    "initialCategory": 1997, 
    "lineColor": "#050", 
    "lineThickness": 1, 
    "dashLength": 5 
    "finalValue": 0, 
    "finalCategory": 1997 
} 

はあなたの価値軸で/ハードコードされたminimummaximum静的を持っている場合、あなたはRobbertはコメントで述べたものを行うことができinitialValue

+0

私はそうする最も簡単な方法は、設定することと考えていますあなたの値軸に "最大"プロパティを持ち、あなたのトレンドラインの "initialValue"と同じ値を持っています。 – Robbert

答えて

0

に静的な値を持つcode pen demoです。動的に設定する場合は、initイベントを使用してvalueAxisの読み取り専用minおよびmaxプロパティにアクセスします。これはvalueAxisの計算された最小値と最大値に対応し、そこにトレンドラインを追加/設定します。ここで最後のカテゴリと最小値に、最初のカテゴリと最大値から行く新しいトレンドラインを作成する例です:

var chart = AmCharts.makeChart("chartdiv", { 
    //other settings omitted 
    "listeners": [{ 
    "event": "init", 
    "method": function(e) { 
     var trendline = { 
     "initialValue": e.chart.valueAxes[0].max, //max axis value 
     "finalValue": e.chart.valueAxes[0].min, //min axis value 
     "initialCategory": e.chart.dataProvider[0][e.chart.categoryField], 
     "finalCategory":e.chart.dataProvider[e.chart.dataProvider.length - 1][e.chart.categoryField] 
     }; 
     e.chart.trendLines.push(trendline); 
     e.chart.validateNow(); 
    } 
    }] 
}); 

Demo

関連する問題