【发布时间】:2014-12-07 05:26:54
【问题描述】:
我想创建一个图,显示来自如下邻接矩阵的节点之间的连接。
gplot 似乎是最好的工具。但是,为了使用它,我需要传递每个节点的坐标。问题是我不知道坐标应该在哪里,我希望该函数能够为我找出一个好的布局。
例如,这是我使用以下任意坐标的输出:
A = [1 1 0 0 1 0;
1 0 1 0 1 0;
0 1 0 1 0 0;
0 0 1 0 1 1;
1 1 0 1 0 0;
0 0 0 1 0 0];
crd = [0 1;
1 1;
2 1;
0 2;
1 2;
2 2];
gplot (A, crd, "o-");
这很难阅读,但是如果我稍微调整一下坐标并将它们更改为以下内容,它就会变得更具可读性。
crd = [0.5 0;
0 1;
0 2;
1 2;
1 1;
1.5 2.5];
我不期望完美优化的坐标或任何东西,但是我如何告诉 MATLAB 自动为我找出一组使用某种 algorithm 看起来不错的坐标,这样我就可以绘制看起来像顶部的东西图片。
提前致谢。
【问题讨论】:
标签: matlab matrix octave graph-theory adjacency-matrix