Data Visualization III:Circular Graph引子 Happy new year!赶在圣诞假期刚刚结束之际、正式投入工作前,推出数据可视化系列三(我怕之后会拖更)。这期分享的是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)% 画图 你点击各个节点还能选择节点的“开、关”。 比如我的矩阵是一个44 * 44的相关矩阵,自己练习测试的效果如下(你还可以调节节点、线条的粗细、颜色等属性): 有些人抱怨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];
thresh = 0.995; x(x > thresh) = 1; x(x <= thresh) = 0;
myLabel = cell(length(x)); myLabel{1}={'FP1'}; myLabel{2}={'FPZ'}; myLabel{3}={'FP2'}; myLabel{4}={'AF3'}; myLabel{5}={'AF4'}; myLabel{6}={'FP1'}; myLabel{7}={'FPZ'}; myLabel{8}={'FP2'}; myLabel{9}={'AF3'}; myLabel{10}={'AF4'};
figure; myColorMap = randi([0 0],length(x),3); circularGraph(x,'colormap',myColorMap,'label',myLabel);
|