d3.jsで作成されたグラフがあります。私がチャート上に点を置くと、ボーダーと背景色のテキストを表示したい。d3.js:スタイリング<text>が動作しない
は今のところ、ないスタイルを持つ唯一のテキストがホバーに表示されますし、(ツールチップ)私のコードは次のようになります。
var g = svg.append("g")
.attr("transform", "translate(" + (cfg.width/2 + cfg.margin.left) + "," + (cfg.height/2 + cfg.margin.top) + ")");
on("mouseover", function(d,i) {
var newX = parseFloat(d3.select(this).attr('cx')) - 10;
var newY = parseFloat(d3.select(this).attr('cy')) - 10;
tooltip
.attr('x', newX)
.attr('y', newY)
.text(Format(d.value))
.transition().duration(200)
.style('opacity', 1)
})
.on("mouseout", function(){
tooltip.transition().duration(200)
.style("opacity", 0);
});
var tooltip = g.append("text")
.attr("class", "tooltip")
.style("opacity", 0);
私は.tooltip
にスタイルを追加すると、それは何も変わりません。その後、g.append("text")
をg.append("foreignObject")
、g.append("div")
などに変更すると、ホバーに表示されなくなります(コンソール要素に表示されます)。
私は間違っていますか?
何なスタイルは、クラス 'tooltip'に追加するつもりですか?あなたはあなたの質問の最も重要な部分、つまりスタイリング自体を欠いています! – altocumulus
@altocumulus私はOPが 'background-color'と' border'を適用しようとしていると信じています。しかし、私はあなたに同意する、それは非常に明確ではない。 –
@altocumulus申し訳ありませんが、明らかにされていませんが、Gerardo Furtadoの回答が私の望むものです – Dan