7

Web ベースのダイアグラム エディタを作成する予定です。もしそれがデスクトップ用だったら、それを構築するためのプラットフォームとしてEclipse GEFを選んだでしょう。

Web については、d3.js を検討していますが、d3 で出くわしたほとんどすべての例と記事がデータの視覚化のためのものであり、実際にはインタラクティブなポイント アンド クリックの選択のためのものではないことが少し心配です。 and-connect、drag-and-draw のような使い方。

このエディタの作成に d3 を強制的に適合させることはまだ可能かもしれませんが、エディタを今後も維持することが継続的に苦痛になるような方法で d3 が進化するのではないかと考えています。

コミュニティへの私の質問は次のとおりです。ソフトウェア アーキテクチャの観点から、d3 は自由形式のダイアグラム エディタを構築するのに適していますか? そのようなエディタが長期的に使用できることを証明する API、d3 内部コード、記事、または例を教えていただけますか?

4

2 に答える 2

13

質問が「D3 は、Web ベースのダイアグラム エディターの作成に関連する SVG インタラクションで私を助けてくれますか?」である場合、答えは「はい、少し」です。しかし、あなたは非常に大規模なプロジェクトに着手しており、D3 はその一部しか支援できません。

D3 が役立つ領域の例:

全体として、D3 が行うことのほぼすべての側面を制御する準備ができていない限り、おそらくより高いレベルのフレームワークを探していると思います。

D3 が提供するほとんどのヘルパー メソッドがデータの視覚化を対象としているのは正しいことですが、SVG 上の薄いレイヤーを提供するため、説明したような汎用プロジェクトに役立ちます。

D3 が将来このプロジェクトに適さない方向に進化するかどうかについては、@mbostock だけが確実に知ることができますが、SVG または HTML ノード操作に使用できるようにする API の設計を考えると、かなり低いレベルにとどまると言っても過言ではないと思います。この例はおそらく前に見たことがあるでしょうが、これはチャートやグラフを超えたライブラリの力をよく表しています。

于 2013-06-11T19:13:35.050 に答える
2

D3 は「単なる」フレームワークであり、ほとんど何にでも使用できます。ただし、あなたがやろうとしていることには特に適していないように思えます。特に、すべてがデータによって駆動されるという D3 の主なコンセプトは、ここでは有益ではないように思えます。

于 2013-06-11T16:59:54.963 に答える