s.o.c.i.a.r.i.u.m
概要
コミュニケーションのイベントログからソーシャルネットワークの時系列を生成し,そこから抽出されたコミュニティ構造の遍歴を可視化するソフトウェアです.ソースコード付き(BSDライセンス)で公開しています.
履歴
- 2009/11/17 バグ修正+機能追加(次数分布の出力,コミュニティ所属情報の出力)
- 2009/10/07 エッジリストに関する説明を追加
- 2009/10/07 小さな修正
- 2009/10/01 テクスチャに関する説明を追加
- 2009/09/24 起動できない場合がある不具合を修正
- 2009/09/23 バグ修正+機能追加
- 2009/09/10 バグ修正+機能追加
- 2009/09/01 beta版公開
- 2009/08/05 alpha2版公開
- 2009/05/13 alpha版公開
ダウンロード
- sociarium.zip [12MB]
- Microsoft Windows専用(Vista 64bitでのみ動作確認)
- 環境によってはVisual C++ 2008 再頒布可能パッケージ (x86)が必要になります.
- Kiyoya氏がMac OS Xに移植中
- ビルドに必要なもの
- Visual C++ 2008製品版(ATLが必要)とVisual Studio 2008 Service Pack 1
ATLはテクスチャ画像の読み込みにのみ使っているので,その箇所を他のライブラリで代用すればVC製品版である必要はありません. - Visual C++ 2008用のboostライブラリ
- GLEW
- FTGL
- FreeType
- Numeric Library Bindings for Boost UBlas & CLAPACK PREBUILT LIBRARIES FOR WINDOWS MACHINE (optional)
- FFTW (optional)
fftw-3.x-vs2008.zipを導入するのが簡単だと思います.
- Visual C++ 2008製品版(ATLが必要)とVisual Studio 2008 Service Pack 1
スクリーンショット




簡単な使い方
- sociarium.exeを実行
- dataフォルダ中のファイルをウィンドウにドラッグ&ドロップで描画(ESCキーで読み込みキャンセル)
- 静的レイアウト(SPACE)は選択された要素に対してのみ実行(全要素の選択はCtrl+A)
- 動的レイアウト(Ctrl+SPACE)はアクティブな要素に対して実行
- コミュニティ検出(ENTER)はアクティブな要素に対して実行
- 要素のアクティブ⇔非アクティブの切り替えは編集メニューから(表示⇒アクティブ/隠す⇒非アクティブ)
- 時系列データの描画時は画面右側のスライダーまたはカーソルキーの上下でレイヤー(時刻)間を移動します.
- ノード名が○○の場合,textureフォルダに"○○.png"という画像ファイルがあればそれをテクスチャとして用います.
- 右クリックドラッグで視点変更,グラフ要素の右クリックで隣接要素のハイライト,グラフ要素の左ダブルクリックで連結成分選択,コミュニティの左ダブルクリックでコミュニティ要素を選択,等
テクスチャについて
以下のようなデータを用意した場合@format = EdgeList @delimiter = , @texture_folder = hashimoto @node_texture = ../agent.png I, kuniharu I, lum I, you"$/texture/hashimoto/"をデフォルトのテクスチャフォルダ、"$/texture/hashimoto/../agent.png"、つまり"$/texture/agent.png"をデフォルトのテクスチャとしてセットします。$はsociarium.exeが存在するフォルダです。例えば@texture_folder以下にkuniharu.jpg(.png)とlum.jpg(.png)というファイルがあれば、それらは対応するノードのテクスチャとして用いられ、対応するテクスチャがないノードについてはデフォルトのテクスチャが用いられます。

エッジリストについて
"テクスチャについて"の例に以下のパラメータを加え,@columns = source, target, weight, name @directedデータ部分を以下のように書き換えると,
I, kuniharu, 10, Sit! kuniharu, I, 3, Bowwow I, lum, 5, Mofu Mofu I, you, 1, Helloグラフは有向グラフとみなされ,また列の要素をそれぞれ出ノード,入ノード,エッジの重み,エッジの名前として与えることができます.
その他
- ご質問等は hy @ sys.t.u-tokyo.ac.jp (@マーク両脇の空白は削除) にどうぞ.
謝辞
The supports of "KAKENHI 19700085" and "VALUE CREATION INITIATIVE (Supported by Sumitomo Corporation)" are gratefully acknowledged.最新のソース
2009.11.17更新sociarium
sociarium/algorithm_selector.cppsociarium/algorithm_selector.h
sociarium/color.cpp
sociarium/color.h
sociarium/common.cpp
sociarium/common.h
sociarium/community_transition_diagram.cpp
sociarium/community_transition_diagram.h
sociarium/draw.cpp
sociarium/draw.h
sociarium/flag_operation.h
sociarium/font.cpp
sociarium/font.h
sociarium/fps_manager.cpp
sociarium/fps_manager.h
sociarium/glew.cpp
sociarium/glew.h
sociarium/graph_extractor.cpp
sociarium/graph_extractor.h
sociarium/graph_utility.cpp
sociarium/graph_utility.h
sociarium/layout.cpp
sociarium/layout.h
sociarium/main.cpp
sociarium/main.h
sociarium/menu_and_message.cpp
sociarium/menu_and_message.h
sociarium/resource.h
sociarium/selection.cpp
sociarium/selection.h
sociarium/sociarium_graph.cpp
sociarium/sociarium_graph.h
sociarium/sociarium_graph_time_series.cpp
sociarium/sociarium_graph_time_series.h
sociarium/texture.cpp
sociarium/texture.h
sociarium/thread.cpp
sociarium/thread.h
sociarium/timeline.cpp
sociarium/timeline.h
sociarium/update_predefined_parameters.cpp
sociarium/update_predefined_parameters.h
sociarium/view.cpp
sociarium/view.h
sociarium/world.h
sociarium/world_impl.h
sociarium/world_impl_draw.cpp
sociarium/world_impl_draw_orthogonal_part.cpp
sociarium/world_impl_draw_perspective_part.cpp
sociarium/world_impl_edit_graph.cpp
sociarium/world_impl_initialize.cpp
sociarium/world_impl_mouse_action.cpp
sociarium/world_impl_others.cpp
sociarium/world_impl_select.cpp
sociarium/world_impl_thread.cpp
sociarium/world_impl_view.cpp
thread
sociarium/thread/community_detection.cppsociarium/thread/community_detection.h
sociarium/thread/edge_width_update.cpp
sociarium/thread/edge_width_update.h
sociarium/thread/force_direction.cpp
sociarium/thread/force_direction.h
sociarium/thread/graph_creation.cpp
sociarium/thread/graph_creation.h
sociarium/thread/layout.cpp
sociarium/thread/layout.h
sociarium/thread/node_size_update.cpp
sociarium/thread/node_size_update.h
sociarium/thread/detail/read_file.cpp
sociarium/thread/detail/read_file.h
module
sociarium/module/community_detection.cppsociarium/module/community_detection.h
sociarium/module/community_detection_betweenness_centrality_separation.cpp
sociarium/module/community_detection_clique_percolation_3.cpp
sociarium/module/community_detection_clique_percolation_4.cpp
sociarium/module/community_detection_clique_percolation_5.cpp
sociarium/module/community_detection_connected_components.cpp
sociarium/module/community_detection_modularity_maximization_using_greedy_method.cpp
sociarium/module/community_detection_modularity_maximization_using_t-eo_method.cpp
sociarium/module/community_detection_strongly_connected_components.cpp
sociarium/module/graph_creation.cpp
sociarium/module/graph_creation.h
sociarium/module/graph_creation_read_adjacency_list.cpp
sociarium/module/graph_creation_read_adjacency_matrix.cpp
sociarium/module/graph_creation_read_barabasi_albert_model.cpp
sociarium/module/graph_creation_read_edge_list.cpp
sociarium/module/graph_creation_read_lattice_model.cpp
sociarium/module/graph_creation_read_pajek.cpp
sociarium/module/graph_creation_read_sierpinski_gasket_model.cpp
sociarium/module/graph_creation_read_time_series_exponential_decay.cpp
sociarium/module/graph_creation_read_time_series_rect.cpp
sociarium/module/language_en.cpp
sociarium/module/language_jp.cpp
sociarium/module/layout.cpp
sociarium/module/layout.h
sociarium/module/layout_cartograms.cpp
sociarium/module/layout_circle.cpp
sociarium/module/layout_circle_in_size_order.cpp
sociarium/module/layout_high_dimensional_embedding.cpp
sociarium/module/layout_kamada_kawai_method.cpp
sociarium/module/layout_lattice.cpp
sociarium/module/layout_random.cpp
graph
graph/graph.cppgraph/graph.h
graph/graphex.h
graph/property_graph.h
graph/util/traverser.cpp
graph/util/traverser.h
shared
shared/fps.hshared/math.h
shared/msgbox.cpp
shared/msgbox.h
shared/mtrand.h
shared/mutex.cpp
shared/mutex.h
shared/predefined_color.h
shared/thread.h
shared/timer.h
shared/util.cpp
shared/util.h
shared/vector2.h
shared/vector3.h
shared/win32api.cpp
shared/win32api.h
shared/wndbase.h
shared/gl/fbo.cpp
shared/gl/fbo.h
shared/gl/texture.cpp
shared/gl/texture.h
shared/gl/glview.cpp
shared/gl/glview.h
cartograms
cartograms/cartograms.cppcartograms/cartograms.h
HOME
6895