レンダリングするcytoscape.jsグラフがあります。私はノードを配置するためにプリセットレイアウトを利用することに興味があります。 cytoscape.jsのドキュメントでは、プリセットのレイアウトについては、以下を示していますCytoscape.jsプリセットレイアウトドキュメント
var options = {
name: 'preset',
positions: undefined, // map of (node id) => (position obj); or function(node){ return somPos; }
zoom: undefined, // the zoom level to set (prob want fit = false if set)
pan: undefined, // the pan level to set (prob want fit = false if set)
fit: true, // whether to fit to viewport
padding: 30, // padding on fit
animate: false, // whether to transition the node positions
animationDuration: 500, // duration of animation in ms if enabled
animationEasing: undefined, // easing of animation if enabled
ready: undefined, // callback on layoutready
stop: undefined // callback on layoutstop
};
いくつかのいずれかが、それは私がすべて格納し、次の
// map of (node id) => (position obj); or function(node){ return somPos; }
を言うときドキュメントが何を意味するかの例を私は理解するのに役立つか、与えることができます次の列
id, origin, destination, x position, y position
とMySQLデータベーステーブル内のノードはcytoscape.js位置がdictiを取るんこれは次のようになります。
{'id': 1, {'x':10, 'y':45}}, {'id': 2, {'x':21, 'y':32}}
など?
元の質問で返信いただきありがとうございます。それらを取得するよりもポジションを設定する方法についての詳細です。 – ForgottenKahz
編集を参照してください。私はあなたを助けて欲しい! – MFigueredo
エレメントJSONの位置を@MFigueredoの例のように定義すると、initで 'layout:{name: 'preset'}'を指定する以外に何もする必要はありません。既定では、プリセットレイアウトは何もせず、既に定義された位置だけを使用します。レイアウトの他の機能は、手動で新しい位置を指定したり、アニメーションなどを使用したりする場合です。 – maxkfranz