0

d3でデュアルレイヤーの時間軸を書いています。最初のレイヤーは、組み込みのものと同じように、通常の目盛りごとのティック アックスです。

たとえば、次のようになります

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
2008    2009                  2010

少しドラッグすると、このようになります

 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 2009                       2010              2011

私がやりたいことは、ラベルを新しい位置にアニメーション化することですが、同じラベルがある場合に限ります。したがって、ここで 2009 年と 2010 年はスライドします。

問題は、d3 が新しい 2009 年のラベルを前の 2008 年のラベルに割り当てる可能性があるため、効果が失われることです。これを回避することは可能ですか?

4

1 に答える 1

2

もっとコードを見ないとなんとも言えませんが、 operatorのkey引数が.data()必要なようです。これにより、既存の要素および/またはその既存のデータに基づく可能性のあるキー関数を使用して、データを要素に結合できます。これがどのように機能するかについては、この棒グラフ チュートリアルの「オブジェクトの一貫性」セクションに適切な説明があります。

于 2012-09-13T00:22:28.640 に答える