D3.js data使い方(enter, update, exit)

D3の基本、dataの使い方を紹介します。

とすると”div”要素にデータが割り当てられます。

例えばdiv要素がない状態で

とすると、データの個数分のdiv要素が生成されます。

下のように、div要素がすでに2つある状態で、

とすると、

のように、新しく生成された要素が更新されます。新しく生成された部分をenter領域、すでにある部分をupdate領域と言います。
このupdate領域のデータを更新するためには、下のようにします。

update領域とenter領域のスタイルを同時に変更したい場合が多いと思いますが、そのようなときは、次のようにすると一括で変更することができます。

一方で、すでに上のように6つのdiv要素があり、割り当てる方のデータが少ない場合、exitを使って余分な要素の領域を指定することができます。

exit領域のデータは消去することがほとんどですので

として消去してやります。

まとめ

dataはD3のキーとなる部分ですので押さえておきたいところです。