Events
更新日: 2018-09-03
以下のプロパティは、イベントによって、チャートがどのように作用するかを定義します。
名称 | type | 初期値 | 説明 |
---|---|---|---|
events | string[] | ["mousemove", "mouseout", "click", "touchstart", "touchmove", "touchend"] | events はツールチップとhoverに指定するイベントを定義します。 |
onHover | funtion | null | 任意のイベントが発火した時に呼び出されます。 チャートのコンテキストで呼び出され、イベントと、アクティブな要素の配列(bar、points等)が渡されます。 |
onClick | function | null | イベントがmouseup または、click の場合に呼び出されます。 チャートのコンテキストで呼び出され、イベントと、アクティブな要素の配列(bar、points等)が渡されます。 |
イベントオプション
例えば、クリックだけに反応するチャートは以下の通りです。
var chart = new Chart(ctx, {
type: 'line',
data: data,
options: {
// このチャートはマウス移動等には反応しません。
events: ['click']
}
});
デモ
バーをクリックすると、ツールチップを表示し、 クリックしたバーの色をconsole.log
に出力します。
JavaScript
var ctx = document.getElementById("myChart").getContext('2d');
var myChart = new Chart(ctx, {
type: 'bar',
data: {
labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
datasets: [{
label: '# of Votes',
data: [12, 19, 3, 5, 2, 3],
backgroundColor: [
'rgba(255, 99, 132, 0.2)',
'rgba(54, 162, 235, 0.2)',
'rgba(255, 206, 86, 0.2)',
'rgba(75, 192, 192, 0.2)',
'rgba(153, 102, 255, 0.2)',
'rgba(255, 159, 64, 0.2)'
],
borderColor: [
'rgba(255,99,132,1)',
'rgba(54, 162, 235, 1)',
'rgba(255, 206, 86, 1)',
'rgba(75, 192, 192, 1)',
'rgba(153, 102, 255, 1)',
'rgba(255, 159, 64, 1)'
],
borderWidth: 1
}]
},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero:true
}
}]
},
events: ['click'],
onHover: function(e, el) {
if (! el || el.length === 0) return;
console.log('onHover : label ' + el[0]._model.label);
},
onClick: function (e, el) {
if (! el || el.length === 0) return;
console.log('onClick : label ' + el[0]._model.label);
}
}
});
HTML
<canvas id="myChart"></canvas>
© 2013 Chart.js is available under the MIT license
このコンテンツはChart.jsドキュメントを翻訳/改変したものです。