2

動的グラフを作成し、Gephiツールキットを使用してストリーミングしようとしています。これまで、ツールキットとストリーミングプラグインのチュートリアルに従って、通常のグラフを作成し、GephiGUIにストリーミングしてきました。

グラフを動的にする方法を理解するのに苦労しています-をTimeInterval使用してノードテーブルとエッジテーブルに列を追加することができましたAttributeModelが、GUIでタイムラインウィンドウを開くと、グラフが動的ではないと表示されます。モデル/コントローラーは私には少し混乱しています。

これが私が今持っているコードです:

ProjectController pc = Lookup.getDefault().lookup(ProjectController.class);
pc.newProject();
Workspace workspace = pc.getCurrentWorkspace();
AttributeController attributeController = Lookup.getDefault().lookup(AttributeController.class);
AttributeModel attributeModel = attributeController.getModel();
AttributeColumn nodeTimeColumn = attributeModel.getNodeTable().addColumn(DynamicModel.TIMEINTERVAL_COLUMN, AttributeType.TIME_INTERVAL, AttributeOrigin.PROPERTY);
AttributeColumn edgeTimeColumn = attributeModel.getEdgeTable().addColumn(DynamicModel.TIMEINTERVAL_COLUMN, AttributeType.TIME_INTERVAL, AttributeOrigin.PROPERTY);
GraphController graphController = Lookup.getDefault().lookup(GraphController.class);
GraphModel graphModel = graphController.getModel();
DirectedGraph graph = graphModel.getDirectedGraph();

// At this point, I want to make the graph dynamic so that I can use
// the Timeline feature when I stream to the GUI.

StreamingServer server = Lookup.getDefault().lookup(StreamingServer.class);
ServerControllerFactory controllerFactory = Lookup.getDefault().lookup(ServerControllerFactory.class);
ServerController serverController = controllerFactory.createServerController(graph);
String context = "/testing";
server.register(serverController, context);
4

1 に答える 1

6

Gephiグラフストリーミングは、原則として、大きな動的グラフをロードするよりもはるかに少ないメモリを使用して、グラフの変化をリアルタイムで視覚化するための代替手段です。したがって、各時点で、メモリに完全な動的グラフはありませんが、グラフの現在の状態を表す静的グラフがあります。そのため、デフォルトでは、プラグインは静的グラフのみを作成および更新します。

残念ながら、グラフストリーミングを使用して動的グラフを更新することはまだできません。近い将来、サポートする予定であり、次のクラスの操作を変更することで、このような操作が可能になります。

https://github.com/gephi/gephi-plugins/blob/graph-streaming/StreamingAPI/src/org/gephi/streaming/api/GraphUpdaterEventHandler.java

このファイルでわかるように、動的属性の処理はありません。新しいノード/エッジ/属性が追加、変更、または削除されますが、動的列は更新されません。

于 2012-11-02T10:41:21.517 に答える