2017-03-01 19 views
0

私はamChartsのstockChartにリスナーを追加しようとしていますが、どこを見つけることができません。amcharts 'stockChart mouse move listener

the docs of chartCursorによると、あなたはしかしchartCursorは、唯一の定期的なチャートがthe docs of the StockChartに応じstockChart上に存在しないchartCursorchangedイベントを設定することができます。 私が見る限り、セミ関連の設定はchartCursorSettingsですが、リスナーを設定することはできません。

amChartsのamStockChartよりマウスの移動/変更されたイベントをキャッチするにはどうすればよいですか?

答えて

1

changedイベントはpanelレベルでキャッチすることができます。以下

var chart = AmCharts.makeChart("chartdiv", { 
    // ... 
    "panels": [{ 
    // ... 
    "listeners": [{ 
     "event": "changed", 
     "method": function(e) { 
     console.log('changed event fired') 
     } 
    }], 
    }], 
    // ... 
}); 

デモ:

var chart = AmCharts.makeChart("chartdiv", { 
 
    "type": "stock", 
 
    "theme": "light", 
 

 
    "categoryAxesSettings": { 
 
    "minPeriod": "mm" 
 
    }, 
 

 
    "dataSets": [{ 
 
    "fieldMappings": [{ 
 
     "fromField": "value", 
 
     "toField": "value" 
 
    }], 
 

 
    "dataProvider": generateChartData(), 
 
    "categoryField": "date" 
 
    }], 
 

 
    "panels": [{ 
 
    "stockGraphs": [{ 
 
     "valueField": "value", 
 
     "type": "smoothedLine" 
 
    }], 
 
    "listeners": [{ 
 
     "event": "changed", 
 
     "method": function(e) { 
 
     console.log('changed event fired') 
 
     } 
 
    }], 
 
    }], 
 

 
    "chartCursorSettings": { 
 
    "valueBalloonsEnabled": true 
 
    } 
 
}); 
 

 

 
function generateChartData() { 
 
    var chartData = []; 
 
    var firstDate = new Date(2012, 0, 1); 
 
    firstDate.setDate(firstDate.getDate() - 1000); 
 
    firstDate.setHours(0, 0, 0, 0); 
 

 
    for (var i = 0; i < 1000; i++) { 
 
    var newDate = new Date(firstDate); 
 
    newDate.setHours(0, i, 0, 0); 
 

 
    var a = Math.round(Math.random() * (40 + i)) + 100 + i; 
 

 
    chartData.push({ 
 
     date: newDate, 
 
     value: a 
 
    }); 
 
    } 
 
    return chartData; 
 
}
#chartdiv { 
 
\t width: 100%; 
 
\t height: 300px; 
 
}
<script src="//www.amcharts.com/lib/3/amcharts.js"></script> 
 
<script src="//www.amcharts.com/lib/3/serial.js"></script> 
 
<script src="//www.amcharts.com/lib/3/themes/light.js"></script> 
 
<script src="//www.amcharts.com/lib/3/amstock.js"></script> 
 
<div id="chartdiv"></div>

+0

祝福があなたにも! –

+0

btw、私はあなたがamChartsの仕事をしているのを見ています。彼らの文書からそのことを理解することは本当に難しいことを知らせます。 –

+1

私はそれに沿って渡します。 – xorspark