2

ストリームグラフがあり、次の例のように、マウスが各ストリームの上に置かれたときに表示されるツールチップを追加したいと考えています。

http://archive.stamen.com/mtvmovies-streamgraph/index.html

ここに画像の説明を入力

現時点では同様のことを行うツールチップがありますが、各ストリームの最初の値のみが表示されるため、ストリームのどこにカーソルを合わせても、開始値のみが表示されます。また、ツールチップは連続していないため、カーソルを移動するとツールチップが消えます

Heres私が今使っているコードです。

   var toolTip = vis.selectAll("path")
       .data(data)
       .append("svg:title")
       .text(function(d) {
           return ('Date: ') + formatTime(d.d_date) +
                  (' Money: ') + (d.money) +
                  (' Movie: ') + (d.name)
       });

誰か提案やアドバイスはありますか??

4

1 に答える 1

1

私はあなたがへのあなたの呼び出しを逃していると思いますenter().append()。特に指定がない限り、要素は親のデータを共有します。

/* Join */
var stream = viz.selectAll("path").data(data);

/* Enter */
stream.enter().append("path").append("title");

/* Exit */
stream.exit().remove();

/* Update */
stream
  .attr("d", function(d) { return d.path; })
.select("title")
  .text(function(d) { 
      return ('Date: ') + formatTime(d.d_date) 
        + (' Money: ') + (d.money) 
        + (' Movie: ') + (d.name);
  });
于 2013-02-11T19:05:58.473 に答える