1
私はチャート領域でonclickのx軸とy軸の値を取得しようとしています。クリック時にx軸とy軸を取得する方法Angular JS Charts?
HTML::
<script data-require="[email protected]" src="http://code.angularjs.org/1.2.2/angular.js" data-semver="1.2.2"></script>
<script data-require="[email protected]*" data-semver="3.3.11" src="//cdnjs.cloudflare.com/ajax/libs/d3/3.3.11/d3.js"></script>
<script type="text/javascript" src="https://rawgit.com/chinmaymk/angular-charts/bower/dist/angular-charts.min.js"></script>
<div ac-chart="'area'" ac-data="barData" ac-config="config" id='chart2' class='chart' style="width: 100%"></div>
JS:今のように私はやっている
$scope.config = {
title: 'Customer Distribution',
tooltips: true,
labels: false,
mouseover: function() {
},
mouseout: function() {
},
click: function (d) {
console.log(d);
console.log(angular.toJson(d));
},
isAnimate: true,
waitForHeightAndWidth: false,
legend: {
display: true,
//could be 'left, right'
position: 'right',
htmlEnabled: false
}
};
var sin = [];
if (angular.equals(bin, "UNIT")) {
angular.forEach(data, function (item) {
var y = [];
y.push(item.customerListSize);
sin.push({x: item.value, y: y});
});
} else {
angular.forEach(data, function (item) {
var y = [];
y.push(item.totalBinSize);
sin.push({x: item.binName, y: y});
});
}
$scope.barData = {
series: [featureType],
data: sin
};
チャートが正しく表示しますが、私はクリックでいくつかの機能を追加したいですか?チャートのxとyの値をクリックして取得する必要があります。これをツールチップに追加すると、その値で他のメソッドも呼び出すことができます。クリックで値を取得する方法を教えてもらえますか?私はそれをクリックしたときに画面の位置を表示するだけでコンソールを印刷しようとしました。
これは試みましたが、dは画面位置を持っていました。 – user3407267
@ user3407267、あなたは正しい、私の謝罪です。あなたは、クリックされたもののx、y値に対する「クリック」のx、y位置を求めましたか? – Mark