1

我想知道matlab是否具有工具箱的一些功能,可以像这样以集线器为中心的方式绘制网络:

以中心为中心的网络图

我有一个节点的连接矩阵。边缘和颜色的方向并不那么重要。只需要以集线器为中心的样式。我检查了传记工具箱,但它似乎以随机方式绘制网络。我在网上找到了一些工具,它们要么以其他语言实现,要么作为商业软件实现。还是matlab根本做不到?有人对此有任何想法吗?

4

1 回答 1

1

图形可视化的最佳工具可能是 GraphViz:http ://www.graphviz.org/

它基本上可以做任何你想做的事情(在合理范围内)。我们在工具箱中使用它来进行图形布局。当人们不想重新发明轮子来进行图形布局(这不是微不足道的,尤其是对于大型图形)时,人们会使用它来制作漂亮的图形。

有一个谷歌项目可以让 GraphViz 进入 MATLAB:http ://code.google.com/p/graphviz4matlab/

我没用过,但是看起来很甜。它是在 GPL 下发布的,所以如果这是一个问题,我一直在研究的工具箱:http: //www.newfolderconsulting.com/prt/对图形可视化工具的支持非常有限。例如

prtPath('alpha');
connMat = [0 1 1 1 1 0; 1 0 1 0 1 0; 1 1 0 0 0 0; 1 0 0 0 0 0; 1 1 0 0 0 0; 0 0 1 0 0 0];
nodeNames = {'pete','kenny','sam','wiki','samantha','elena'};

graph = prtDataTypeGraph(connMat,nodeNames);
graph.plot; 
title('People (and dogs) Who Worked or Lived Together');

在内部,它也使用 GraphViz 工具,但不是通过 google 代码项目。

PRT 中的图形可视化代码有多“alpha”,我怎么强调都不过分。如果 GPL 不是问题,那么 google 代码项目看起来是一个不错的解决方案。

于 2013-01-30T04:53:54.573 回答