学习
实践
活动
工具
TVP
写文章

数据可视化系列三:Circular Graph

这期分享的是Circular Graph(环形图),因为前几天在论坛看到滴友求助过类似的问题,故拿出来做一个系列。

方法:Circular Graph

软件:Matlab 2014b 以上版本 (注意版本!!)

适用数据类型:尤其适合描述连接、相关、小世界网络等

源脚本链接:http://nl.mathworks.com/matlabcentral/fileexchange/48576-circulargraph(Paul Kassebaum 2016)

function的调用:function =circularGraph(X)或function =circularGraph(X,'PropertyName',propertyvalue,...)

其中,X为一个相关矩阵,后面的都是根据自己需求的参数设置。

最基本的调用这样做就可以了:

X = [你的矩阵]

Figure;circularGraph(X)% 画图

你点击各个节点还能选择节点的“开、关”。

比如我的矩阵是一个22 * 22的相关矩阵,自己练习测试的效果如下(你还可以调节节点、线条的粗细、颜色等属性):

有些人抱怨Matlab画的图丑,其实不然(虽然默认属性确实丑),Matlab一个画图特别强大的地方在于图像上的所有属性都可以调节,自定义能力强,在你真正了解图形的属性后,所有图形中的元素都可以通过代码进行操纵。

到了大家自己练习的时间了,我给出样例demo (“四步走”方法),大家可以先用我的试验一下(记得先去源链接地址下载toolbox,然后set path,matlab版本需高于等于2014b),然后尝试写自己的code:

% Step 1: 输入矩阵。这里以10*10为例

rng(0);

x = [0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0

0 0 1 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0

0 1 0 1 0 0 0 0 0 0

0 0 1 1 1 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0];

% Step 2: 设定阈限显示连接。这里为了简便和直观,我这个阈限没用到,但这个设定特别适合卡p值显示连接。

thresh = 0.995;

x(x > thresh) = 1;

x(x

% Step 3:给你的节点取名字

myLabel = cell(length(x));

myLabel={'FP1'};

myLabel={'FPZ'};

myLabel={'FP2'};

myLabel={'AF3'};

myLabel={'AF4'};

myLabel={'FP1'};

myLabel={'FPZ'};

myLabel={'FP2'};

myLabel={'AF3'};

myLabel={'AF4'};

% Step 4:画图

figure;

myColorMap = randi([0 0],length(x),3);

circularGraph(x,'colormap',myColorMap,'label',myLabel);

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180109G03J6Q00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券