DevExtreme
チャートでポイントがクリックされたときに何か (最終的にはメニュー) を表示しようとしています。簡単にするために棒グラフを使用することから始めました。
私がやりたいことは、ユーザーがバーをクリックして、その特定の時点で DOM に何か他のものを表示することです。私はこれを設定しようとしましたが、ほとんどの方法で解決しました。解決方法がわからないという問題は、座標に関するものです。
上の例は、クリックした場所と、バーの上部に表示される追加した赤い円を示しています。これを追加するコードは非常に単純です。
var clicked = function(p) {
var element = p.element[0];
var group = d3.select(element)
.select("svg")
.append("g")
.attr("transform", "translate("+ [p.target.x, p.target.y] +")")
.append("circle")
.attr({ cx : 0, cy: 0, r: 10, class: "circle"});
};
クリックされたターゲット要素の座標を取得するだけです。明らかに、これは上隅のようです。実際にクリックされた場所を取得するために誰でも考えられる方法はありますか?
私はここで彼らの例の1つからフォークされたデモンストレーションフィドルを持っています: http://jsfiddle.net/IPWright83/ho2euurh/2/