私は、MS SQL サーバー データベースからプルしているいくつかのデータに対して、 (d3.js http://bl.ocks.org/mbostock/raw/4062045/を使用して) 強制的にレイアウトを作成する作業を行っています。現在、pythonスクリプトを使用してjsonファイルを生成し、python -m SimpleHTTPServerを使用してローカルサーバーで実行しています。
私がやりたいことは、Web アドレスを入力すると、Python スクリプトがサーバー側で実行され、json ファイルが生成されるように、Python スクリプトと HTML の間にリンクを作成することです。この間、UI をブロックする必要があります。ファイルが生成されると、グラフ自体が画面に表示されます。グラフと json ファイルを別々に生成できます。それらをblockuiまたはプログレスバーと一緒に配置する必要があります(プログレスバーは多すぎると思います)。
私は JavaScript と Web 開発の初心者で、グラフを作成しながらその場で学習しています。この方向のガイダンスは大歓迎です。
ありがとう、
プラテック
編集:
現時点でのコードのスニペットは次のとおりです。
d3.json("json_data.json", function(error, graph)
{
var nodeMap = {};
graph.nodes.forEach(function(x) { nodeMap[x.name] = x; });
graph.links = graph.links.map(
function(x)
{
return {
source: nodeMap[x.source],
target: nodeMap[x.target],
value: x.value
};
});
force
.nodes(graph.nodes)
.links(graph.links)
.start();
このコードは、ajax リクエストの成功セクションの下に挿入します。サーバー上に json_data.json ファイルが存在するかどうかを確認し、ファイルの作成中に糸車を表示するために、スクリプトに ajax リクエストを送信して、時間がなくなった場合にエラーへの制御転送が必要です。リクエストのセクション。
json ファイルは単純に次のとおりです。
nodes: {}
links: {} //without any children level of depth.