2016-10-14 20 views
1

私はd3.jsの初心者です。残念ながら、私はそのデータバインディングの概念を理解していません。d3.jsでデータバインディングはどのように機能しますか?

私の知る限り理解し、モデルビューの概念ではないようですので、次はd3.jsには適用されません:

私は明確なモデルオブジェクトoがあり、ビュー・オブジェクト・Vバウンドoの変更は、vの自動更新を引き起こします。

例:oはプロパティa、b、c、vはsvg円、oaはvx、obはvy、ocはv.radius; oの値の1つを変更し、画面上の円(v)をoの値に従って自動的に再描画します。

私が言ったように、これはd3.jsには当てはまりません。しかし、DOMオブジェクト(「選択」と呼ばれる:「入力」、「更新」、「終了」)へのデータのバインドは、d3.jsの中心的概念です。

私は、ドキュメントを読んで、 "ブロック"の例を見て、概念を理解しようとしました。残念ながら、ドキュメンテーションでは単純な完全な実例を見つけることができませんでした。ブロックは非常に印象的ですが、洗練されていない/複雑です。

だから私の中心の質問は次のとおりです。

どのようにd3.jsに結合非常に単純なデータを実装するのでしょうか?

そして、より具体的なサブ質問:

「更新」に関する:どのように(データオブジェクトの特定のセット、例えば1、更新)私の例を実装するだろうか?

「入力」と「削除」について:データオブジェクトがセットに追加または削除されると、ビューはどのように更新されますか?

答えて

0

「自動更新」はできません。したがって、データを変更するたびに、データをDOMオブジェクトに「再バインド」する必要があります。

私の質問D3.js: Is this good practise for data-DOM-binding?を参照してください。それはあなたが尋ねたことをやっているサンプルWebページを含んでいます。

+0

ありがとう、これは動作します! –

関連する問題