文件交换
39下载
更新2016年9月27日
来自GitHub.
在github上查看许可证
在MATLAB中绘制一个交互的圆形图来说明网络中的连接。
Paul Kassebaum(2021)。circularGraphGitHub (https://github.com/paul-kassebaum-mathworks/circularGraph)。检索2021年6月29日.
2021年6月8日
@daiana pur,这些是我改变的位,以适应我的需求:对于自定义颜色映射,从负号到正号,从蓝色到白色到红色:addParameter (p,“标签”,defaultLabel @iscell);[行,Col,V] =查找(AddacencyMatrix);[~,我]= (abs (v));row =行(i);col = col(i);v = v(i);%此分类将确保从最弱到最强的绘图线条,保持底层的弱连接Colourmap = Zeros(长度(v),3);%这是蓝白红色的Colourmap对于colourmapping = 1:length(v)如果v(colourmapping)<0Colourmap(Colourmapping,:) = [0.2 0.2 1] + [0.8 0.8 0] *(v(托尔马图)+1);别的Colourmap(Colourmapping,:) = [1 0.2 0.2] + [0 0.8 0.8] *(1-V(Colourmapping));结束结束解析(p,adjacencymatrix,varargin {:});
为了改变线宽,原来的线宽已经有了,我调整了一些位:
minLineWidth = 0.1;lineWidthCoef = 1;u = abs (v);线宽=美国/ max (u);线宽=线宽。^ 2;%当系数具有相似的绝对值时,使用幂来控制线宽的范围如果sum(linewidth)== numel(linewwidth)%所有行都是相同的宽度。线宽= repmat (minLineWidth元素个数(线宽),1);其他%的可变宽度行。linewidth = linewidthcoef * linewidth + minlinewidth;结束
2021年5月26日
2021年1月26日
嗨,是否有没有添加箭头以指定连接的方向?
2020年12月22日
此外,如何使用相关强度改变线路的代码是什么,并具有Colormap匹配。我无法从下面的评论中弄清楚。会欣赏任何帮助!
20月23日11月23日
解决了二,三,还剩一题,谢谢你,屋大维
2020年11月22日
/ home / hom / ovl /图片/截图起,2020-11-22 14-07-32.png/home/ovl/ images /截图from 20-11-22 14-07-57.png伟大的工具。三个问题:1.专业:看到上面的图片,它代表了两个连续变焦+的初始图,在matlab中,由于某种原因,该图夹在矩形,中央画布中。我不能没有放大,因为这是一个大的连接矩阵(来自FreeSurfer的Destrieux包裹)。2.次要:看上面的图片,标签文件包含标签(来自相同的集合包裹),其中包括'_'和'-'在他们的名字,但这些读取为转义字符,它看起来不整洁。3.非常小:由于某些原因,如果我首先选择All,然后只禁用一个节点(通过单击它的小圆),则显示的连接不会更新;所以如果一个人想显示所有但一个节点,一个必须单独点击激活所有节点,但一个被排除在外(这是一个极端的例子,但它将会很高兴有一个刷新选项后激活/ disactivating各个节点(工具/重置不做)
2020年9月22日
@Chiara Bulgarelli,我认为你可以这样做,用代码中的这个块手动调整颜色图,对于colourmapping = 1:length(v)如果v(colourmapping)<0Colourmap (colourmapping,:) = [0.5 0.5 1] + [0.5 0.5 0]*(v(colourmapping)+1);别的Colourmap(Colourmapping,:)= [1 0.5 0.5] + [0 0.5 0.5] *(1-V(Colourmapping));结束结束然后你只要把"colourmap"矢量放到指定的地方,这是一个颜色地图,从蓝色到白色到红色,从负数到正数。
2020年9月8日
2020年8月31日
2020年8月20日
嗨,有没有办法根据一些强度改变节点的大小?
2020年5月14日
@Paul,非常感谢你的代码!
@Ryan McDoNough,我正在尝试修改版本,为相关的相关性使用不同的颜色。但是,我只有一个节点在中间的一个节点,没有别的。你介意在这里附加整个代码吗?
非常感谢Chiara.
2020年2月13日
亲爱的Paul,非常感谢这个例子,这正是我在ML动态溢出分析中试图做的。但我有个问题。当我运行代码时,我会收到一个错误,因为功能'circulargraphy?本身不接受双重类作为输入。
我也尝试了细胞类型,同样的结果。你能给我一个提示吗?
问候,
gianfranco portaluri.
2020年1月23日
嗨,保罗,谢谢你的情节。有没有可能把下面的弧调高一点,这样acs的顶点就更接近圆心了?非常感谢你,enrico
2019年7月22日
也发生了变化
[row2、col2 v2] =找到(correlationMatrix);%v2将创建所有相关值的Nx1矩阵
来
diag = tril(correlitationmatrix);对于n = 1:尺寸(DIAG,1)v2(n,1)= max(diag(n,:));结束
2019年7月19日
跟进我的评论。改变两个实例
>“颜色”,this.ColorMap(行(i),:)…
>'颜色',defaultColormap(i,:),...
对于那些想要根据相关价值控制线颜色的人,我找到了解决方案
将第二个输入添加到函数调用以包含另一个矩阵(如果仅使用一个矩阵忽略,只需用AddacencyMatrix或您选择的矩阵替换CorrelationMatrix)
>功能=循环(AddacencyMatrix,CorrelationMatrix,Varargin)
在线之后
> p = inputParser;
粘贴以下内容,将你组装的相关值数组转换为实例顺序的RGB值:
> [row2,col2,v2] =查找(correlationmatrix);%v2将创建所有相关值的Nx1矩阵= >地图colormap(热);%初始化颜色映射,将颜色映射方案更改为您所选择的颜色映射方案之一> minv = min (v2 (:));%min Max来建立颜色地图的边界> maxv = max(v2(:));> ncol = size(地图,1);> S =圆形(1+(NCOL-1)*(V2-MINV)/(MAXV-MINV));%规模表明转换> rgb_image = ind2rgb(年代,地图);%将缩放指标转换为RGB,得到Nx1X3矩阵>defaultColorMap =重塑(rgb_image, [length(v2) 3]);%重塑为Nx3矩阵
更改当前第46行(将变为第54行)
> addParameter (p ' ColorMap defaultColorMap, @ (ColorMap)长度(ColorMap) = = (adjacencyMatrix));
> addParameter (p ' ColorMap defaultColorMap, @ (ColorMap)长度(ColorMap) = = (defaultColorMap));
现在的121行(将变成130行)
您还可以创建一个自定义颜色映射,它是您拥有的节点连接数的长度,并将其提供给代码(可能需要更改几行)。希望这可以帮助!
2019年7月5日
2019年5月16日
@Richard谢谢你修复了线路外的磁盘bug!对于其他人,请注释掉这一节:如果u(1) >= 0 && v(1) >= 0%确保弧在单位磁盘内Theta = [Linspace(Max(Thetalim),PI,50),...linspace(-pi,min(etalim),50)]。';别的Theta = Linspace(雷达姆(1),六甲基姆(2))。';结束
而是替换为此:
sortedthetaLim = (thetaLim)进行排序;如果sortedthetaLim (2) -sortedthetaLim(1) >πthetaLim (1) = sortedthetaLim(2) -(2 *π);thetaLim (2) = sortedthetaLim (1);结束Theta = Linspace(雷达姆(1),六甲基姆(2))。';
2019年2月21日
嗨,是否有一种方法可以在绘制相关系数时从-1到1调整Colormap范围?
2018年12月18日
2018年11月29日
谢谢你的功能,我真的很喜欢它。有没有办法关闭按钮?我试图评论代码的各自部分,但不知何故它不会影响外观......谢谢!
2018年11月19日
2018年10月31日
2018年6月20日
嗨,是否有任何方法可以同时更改节点编号的字体大小,而无需单独执行它们?
2018年5月5日
2018年4月10
2018年3月10日
嗨,当我创建一个新的标签,它只是覆盖它。如何先删除默认标签?matlab。
干杯。
2018年3月8日
谢谢分享,等不及要尝试了。
2018年2月25日
2018年2月3
我指的是这篇文章中的第二个人物:http://circos.ca/intro/tabular_visualization/
2018年1月3日
如何指定图中节点的数量?
2017年12月27日
2017年10月11日
你是怎么做圆形图和颜色条的?
2017年10月9日
2017年9月26日
2017年9月8日
@Paul似乎有个问题,有些弧线是向外而不是向内的;我认为如果节点数能被4整除就可以。在这种情况下,talim(2)是+pi,但算法期望的是-pi,并最终绘制了错误的两个可能的弧线。我通过明确检查哪个弧更短(排序talim,如果值之间的差是>pi减去2*pi从较大的一个,把它放在第一个),并绘制它,而不是做u(1),v(1)>=0检查。希望会有帮助!
2017年8月31日
@John,谢谢!(:
2017年8月30日
非常感谢这非常赞赏的代码。我一直想尝试一下,“今天就是最好的机会!”
2017年8月28日
@Roman,看起来像是一篇有趣的文章!谢谢引用我的代码。(我很高兴有用。)我已经把你的文章分享给了MathWorks的一些朋友,他们一直在考虑在化学/ ChE课程中使用计算。干杯!
2017年8月26日
我在出版物中使用并引用了您的代码:http://www.sciencedirect.com/science/article/pii/S1749772816300768#fig0015
2017年8月25日
@Paul Great Tool,谢谢。我拥有的一个问题是我的一些图表在外面的节点之间有一些连接。看起来有点奇怪并穿过标签。你熟悉这个以及如何解决它吗?非常感谢。
2017年8月1
@Iness您没有使用此代码控制颜色(请参阅下面保罗的回答)。为了改变线的宽度:在circularGraph。米去%基于s的值(存储在v)的值并调整参数来计算线宽例如:minlinewidth = 5;lineWidthCoef = 5;线宽= v;希望它有效。问候,
2017年7月31日
请我想改变线条的颜色及其宽度,我该怎么办?
2017年7月5日
亲爱的,所有人都可以启动绘图时钟位置12:00,然后顺时针顺时针,而不是9:00?我怎样才能管理这个?
2017年6月22日
@gyan.您的用例超出了我的设计可以做的事情。我设计了节点和连接线作为单个图形对象:具有单个标记的线()。因此,当更改节点的颜色时,更改出来的所有连接的颜色。您的用例可能很常见。如果我发现时间,我会考虑改变这种设计以启用它。与此同时,您现在可以与Matlab中的网络图表功能相得同。我在MATLAB包括网络图形作为基本数据类型之前写下了这一点。请选中此文档页面:
//www.tatmou.com/help/matlab/graph-and-network-algorithms.html.
2017年6月21日
谢谢@mathworks物理团队但是我仍然有控制连接线颜色的问题。您能否请帮助我根据阈值生成连接线(例如,连接值为1,则连接行#red,如果连接值为2,则连接线是#blue)。
2017年6月20日
@gyan.感谢您的笔记和评级。
在节点的makeLine()中。M,在行对象构造中,添加以下行:MarkerFaceColor, this.Color,……
将这行代码添加到Node.m中的updateColor()中this.NodeMarker.MarkerFaceColor = this.Color;
将此代码添加到Node.m中的UpdateTextLabel()的末尾this.TextLabel.FontWeight =“大胆”;
指定每个节点的颜色。c =循环(x);有点x的%提出= colormap(酷(长度(c.Node)));%一些colormap当k = 1时:length(c.Node)c.Node (k)。颜色=提出(k,:);结束
2017年6月19日
亲爱的保罗,请您帮我做一下:1.用固定的颜色填充特定的节点。2.控制线的颜色。3.制作标签字体粗体。
感谢这个伟大的工具。
2017年3月19日
2017年3月18日
亲爱的保罗,有可能给这些联系的颜色赋予意义吗?例如,它们能根据连接的强度涂上颜色吗,有点像热图?你能给我一些如何做到这一点的建议吗?
2017年2月17日
这真的很有帮助,谢谢你…我也想知道如何减少字体大小?你能否在下面提供更多的信息?另外,我如何从一个以上的节点添加连接请?目前,我只能为一个节点添加连接。谢谢,Gemma.
2016年10月9日
2016年8月23日
2016年8月2日
@PAUL:伟大的可视化工具,简单,但有效。始终想要一些版本的matlab。在侧面笔记中,我不得不修改第120和143线:从违法行为(i)到abs(linewidth(i)),所以我可以绘制负连接(反相)
2016年2月14日
2016年2月12日
@Paul非常感谢。我非常感谢您的快速回复和帮助。
2016年2月11日
@atif,谢谢你的赞美和评级。
我建议在节点类中编辑UpdateTextLabel()方法(在此包的Node..m中定义)。在UpdateTextLabel()中,创建底层文本()对象(内置到MATLAB的类),这是分配文本()对象的FontSize属性的好地方。
如果需要进一步帮助,请告诉我。-保罗
这太棒了。感谢分享。我的标签字体有问题。我画了50个有长标签的节点。在我的情况下,圆形图形抑制实际图形的大小,并放大标签字体大小,但我希望它反过来。是否有一种方法可以减少节点标签的字体,并放大图形本身?
2016年2月9日
2015年12月4
1词:棒:)
2015年8月3日
@Donald,在名为node的文件中。M看哪一行是
集(this.Connection,“颜色”,0.9 * (1 1 1));
把它改成
(此设置。连接、“颜色”(1 1 1));
2015年8月2日
保罗,
这很有用。有没有办法使隐藏的连接变白(匹配背景)而不是灰色?
大学教师
2015年7月29日
@ivan,谢谢(:
可以扩展很多功能,但仍然是一个很好的工作。谢谢你!
2015年4月23日
@MarcVanKralingen你可能有一个例子代码片段来演示这个问题?
其中一条线放在圆的外面。我找不到漏洞。
2015年1月14日
2015年1月12日
@Cristi您可以通过在CircularGraph.m中更改第112行来修复BUG如果是行(i)
2015年1月9日
你好,非常好看的图表!它是否也适用于有向图,即矩阵的上下三角形都有1 ?我在矩阵“hc”上运行代码,其有1个值对以下标签进行关流:> > c.Label(找到(hc (:, 4) > 0))
ans = ' A ' '“ACC MOFC”“MTG”的“”PHG PMC“R””TP”
> > c.Label(找到(hc (4:) > 0))
ans ='a'''''''pcc'''vlpfc''''ai''pi''
然而,当只突出显示节点4,点击标记为ACC'时,只绘制4条线,从ACC'到PCC'、VLPFC'、aI'和pI'。此外,在查看节点4时,它返回5个连接,尽管在图表上只能看到上述4个连接:>> C.Dode(4)
ans =.
具有属性的节点:
标签:ACC”连接(1 x5线):位置:[-0.9629 -0.2698]颜色:[0.2095 0.2331 0.6660]可见:1程度:0.2833
对这个问题的任何想法?显然,它只绘制与具有更高数字的节点的连接,在此示例中忽略节点2(a')和3(acc)。
谢谢,Cristi
在MATLAB中心找到宝藏,并发现社区可以如何帮助您!
在单个可执行文件中使用代码,输出和格式化文本创建脚本。
了解实时编辑器
选择一个网站来获得可用的翻译内容,并看到当地的活动和提供。根据您所在的位置,我们建议您选择:.
您还可以从以下列表中选择一个网站:
请选择表现最佳的中国网站(中文或英文)。MathWorks的其他国家网站并没有针对您所在位置的访问进行优化。
联系您当地的办公室
@daiana pur,
这些是我改变的位,以适应我的需求:
对于自定义颜色映射,从负号到正号,从蓝色到白色到红色:
addParameter (p,“标签”,defaultLabel @iscell);
[行,Col,V] =查找(AddacencyMatrix);
[~,我]= (abs (v));
row =行(i);
col = col(i);
v = v(i);%此分类将确保从最弱到最强的绘图线条,保持底层的弱连接
Colourmap = Zeros(长度(v),3);%这是蓝白红色的Colourmap
对于colourmapping = 1:length(v)
如果v(colourmapping)<0
Colourmap(Colourmapping,:) = [0.2 0.2 1] + [0.8 0.8 0] *(v(托尔马图)+1);
别的
Colourmap(Colourmapping,:) = [1 0.2 0.2] + [0 0.8 0.8] *(1-V(Colourmapping));
结束
结束
解析(p,adjacencymatrix,varargin {:});
为了改变线宽,原来的线宽已经有了,我调整了一些位:
minLineWidth = 0.1;
lineWidthCoef = 1;
u = abs (v);
线宽=美国/ max (u);
线宽=线宽。^ 2;%当系数具有相似的绝对值时,使用幂来控制线宽的范围
如果sum(linewidth)== numel(linewwidth)%所有行都是相同的宽度。
线宽= repmat (minLineWidth元素个数(线宽),1);
其他%的可变宽度行。
linewidth = linewidthcoef * linewidth + minlinewidth;
结束
嗨,是否有没有添加箭头以指定连接的方向?
此外,如何使用相关强度改变线路的代码是什么,并具有Colormap匹配。我无法从下面的评论中弄清楚。会欣赏任何帮助!
解决了二,三,还剩一题,谢谢你,屋大维
/ home / hom / ovl /图片/截图起,2020-11-22 14-07-32.png
/home/ovl/ images /截图from 20-11-22 14-07-57.png
伟大的工具。三个问题:
1.专业:看到上面的图片,它代表了两个连续变焦+的初始图,在matlab中,由于某种原因,该图夹在矩形,中央画布中。我不能没有放大,因为这是一个大的连接矩阵(来自FreeSurfer的Destrieux包裹)。
2.次要:看上面的图片,标签文件包含标签(来自相同的集合包裹),其中包括'_'和'-'在他们的名字,但这些读取为转义字符,它看起来不整洁。
3.非常小:由于某些原因,如果我首先选择All,然后只禁用一个节点(通过单击它的小圆),则显示的连接不会更新;所以如果一个人想显示所有但一个节点,一个必须单独点击激活所有节点,但一个被排除在外(这是一个极端的例子,但它将会很高兴有一个刷新选项后激活/ disactivating各个节点(工具/重置不做)
@Chiara Bulgarelli,
我认为你可以这样做,用代码中的这个块手动调整颜色图,
对于colourmapping = 1:length(v)
如果v(colourmapping)<0
Colourmap (colourmapping,:) = [0.5 0.5 1] + [0.5 0.5 0]*(v(colourmapping)+1);
别的
Colourmap(Colourmapping,:)= [1 0.5 0.5] + [0 0.5 0.5] *(1-V(Colourmapping));
结束
结束
然后你只要把"colourmap"矢量放到指定的地方,这是一个颜色地图,从蓝色到白色到红色,从负数到正数。
嗨,有没有办法根据一些强度改变节点的大小?
@Paul,非常感谢你的代码!
@Ryan McDoNough,我正在尝试修改版本,为相关的相关性使用不同的颜色。但是,我只有一个节点在中间的一个节点,没有别的。你介意在这里附加整个代码吗?
非常感谢
Chiara.
亲爱的Paul,非常感谢这个例子,这正是我在ML动态溢出分析中试图做的。
但我有个问题。当我运行代码时,我会收到一个错误,因为功能'circulargraphy?本身不接受双重类作为输入。
我也尝试了细胞类型,同样的结果。你能给我一个提示吗?
问候,
gianfranco portaluri.
嗨,保罗,谢谢你的情节。
有没有可能把下面的弧调高一点,这样acs的顶点就更接近圆心了?
非常感谢你,enrico
也发生了变化
[row2、col2 v2] =找到(correlationMatrix);%v2将创建所有相关值的Nx1矩阵
来
diag = tril(correlitationmatrix);
对于n = 1:尺寸(DIAG,1)
v2(n,1)= max(diag(n,:));
结束
跟进我的评论。改变两个实例
>“颜色”,this.ColorMap(行(i),:)…
来
>'颜色',defaultColormap(i,:),...
对于那些想要根据相关价值控制线颜色的人,我找到了解决方案
将第二个输入添加到函数调用以包含另一个矩阵(如果仅使用一个矩阵忽略,只需用AddacencyMatrix或您选择的矩阵替换CorrelationMatrix)
>功能=循环(AddacencyMatrix,CorrelationMatrix,Varargin)
在线之后
> p = inputParser;
粘贴以下内容,将你组装的相关值数组转换为实例顺序的RGB值:
> [row2,col2,v2] =查找(correlationmatrix);%v2将创建所有相关值的Nx1矩阵
= >地图colormap(热);%初始化颜色映射,将颜色映射方案更改为您所选择的颜色映射方案之一
> minv = min (v2 (:));%min Max来建立颜色地图的边界
> maxv = max(v2(:));
> ncol = size(地图,1);
> S =圆形(1+(NCOL-1)*(V2-MINV)/(MAXV-MINV));%规模表明转换
> rgb_image = ind2rgb(年代,地图);%将缩放指标转换为RGB,得到Nx1X3矩阵
>defaultColorMap =重塑(rgb_image, [length(v2) 3]);%重塑为Nx3矩阵
更改当前第46行(将变为第54行)
> addParameter (p ' ColorMap defaultColorMap, @ (ColorMap)长度(ColorMap) = = (adjacencyMatrix));
来
> addParameter (p ' ColorMap defaultColorMap, @ (ColorMap)长度(ColorMap) = = (defaultColorMap));
现在的121行(将变成130行)
>“颜色”,this.ColorMap(行(i),:)…
您还可以创建一个自定义颜色映射,它是您拥有的节点连接数的长度,并将其提供给代码(可能需要更改几行)。希望这可以帮助!
来
>'颜色',defaultColormap(i,:),...
@Richard谢谢你修复了线路外的磁盘bug!
对于其他人,请注释掉这一节:
如果u(1) >= 0 && v(1) >= 0
%确保弧在单位磁盘内
Theta = [Linspace(Max(Thetalim),PI,50),...
linspace(-pi,min(etalim),50)]。';
别的
Theta = Linspace(雷达姆(1),六甲基姆(2))。';
结束
而是替换为此:
sortedthetaLim = (thetaLim)进行排序;
如果sortedthetaLim (2) -sortedthetaLim(1) >π
thetaLim (1) = sortedthetaLim(2) -(2 *π);
thetaLim (2) = sortedthetaLim (1);
结束
Theta = Linspace(雷达姆(1),六甲基姆(2))。';
嗨,是否有一种方法可以在绘制相关系数时从-1到1调整Colormap范围?
谢谢你的功能,我真的很喜欢它。有没有办法关闭按钮?我试图评论代码的各自部分,但不知何故它不会影响外观......谢谢!
嗨,是否有任何方法可以同时更改节点编号的字体大小,而无需单独执行它们?
嗨,当我创建一个新的标签,它只是覆盖它。如何先删除默认标签?matlab。
干杯。
谢谢分享,等不及要尝试了。
我指的是这篇文章中的第二个人物:http://circos.ca/intro/tabular_visualization/
如何指定图中节点的数量?
你是怎么做圆形图和颜色条的?
@Paul似乎有个问题,有些弧线是向外而不是向内的;我认为如果节点数能被4整除就可以。在这种情况下,talim(2)是+pi,但算法期望的是-pi,并最终绘制了错误的两个可能的弧线。我通过明确检查哪个弧更短(排序talim,如果值之间的差是>pi减去2*pi从较大的一个,把它放在第一个),并绘制它,而不是做u(1),v(1)>=0检查。希望会有帮助!
@John,谢谢!(:
非常感谢这非常赞赏的代码。我一直想尝试一下,“今天就是最好的机会!”
@Roman,看起来像是一篇有趣的文章!谢谢引用我的代码。(我很高兴有用。)我已经把你的文章分享给了MathWorks的一些朋友,他们一直在考虑在化学/ ChE课程中使用计算。干杯!
我在出版物中使用并引用了您的代码:http://www.sciencedirect.com/science/article/pii/S1749772816300768#fig0015
@Paul Great Tool,谢谢。我拥有的一个问题是我的一些图表在外面的节点之间有一些连接。看起来有点奇怪并穿过标签。你熟悉这个以及如何解决它吗?非常感谢。
@Iness
您没有使用此代码控制颜色(请参阅下面保罗的回答)。
为了改变线的宽度:在circularGraph。米去
%基于s的值(存储在v)的值并调整参数来计算线宽
例如:
minlinewidth = 5;
lineWidthCoef = 5;
线宽= v;
希望它有效。
问候,
请我想改变线条的颜色及其宽度,我该怎么办?
亲爱的,所有人都可以启动绘图时钟位置12:00,然后顺时针顺时针,而不是9:00?我怎样才能管理这个?
@gyan.
您的用例超出了我的设计可以做的事情。我设计了节点和连接线作为单个图形对象:具有单个标记的线()。因此,当更改节点的颜色时,更改出来的所有连接的颜色。您的用例可能很常见。如果我发现时间,我会考虑改变这种设计以启用它。与此同时,您现在可以与Matlab中的网络图表功能相得同。我在MATLAB包括网络图形作为基本数据类型之前写下了这一点。请选中此文档页面:
//www.tatmou.com/help/matlab/graph-and-network-algorithms.html.
谢谢@mathworks物理团队
但是我仍然有控制连接线颜色的问题。
您能否请帮助我根据阈值生成连接线(例如,连接值为1,则连接行#red,如果连接值为2,则连接线是#blue)。
@gyan.
感谢您的笔记和评级。
在节点的makeLine()中。M,在行对象构造中,添加以下行:
MarkerFaceColor, this.Color,……
将这行代码添加到Node.m中的updateColor()中
this.NodeMarker.MarkerFaceColor = this.Color;
将此代码添加到Node.m中的UpdateTextLabel()的末尾
this.TextLabel.FontWeight =“大胆”;
指定每个节点的颜色。
c =循环(x);有点x的%
提出= colormap(酷(长度(c.Node)));%一些colormap
当k = 1时:length(c.Node)
c.Node (k)。颜色=提出(k,:);
结束
亲爱的保罗,
请您帮我做一下:
1.用固定的颜色填充特定的节点。
2.控制线的颜色。
3.制作标签字体粗体。
感谢这个伟大的工具。
亲爱的保罗,有可能给这些联系的颜色赋予意义吗?例如,它们能根据连接的强度涂上颜色吗,有点像热图?你能给我一些如何做到这一点的建议吗?
这真的很有帮助,谢谢你…我也想知道如何减少字体大小?你能否在下面提供更多的信息?另外,我如何从一个以上的节点添加连接请?目前,我只能为一个节点添加连接。
谢谢,Gemma.
@PAUL:伟大的可视化工具,简单,但有效。始终想要一些版本的matlab。在侧面笔记中,我不得不修改第120和143线:从违法行为(i)到abs(linewidth(i)),所以我可以绘制负连接(反相)
@Paul非常感谢。我非常感谢您的快速回复和帮助。
@atif,谢谢你的赞美和评级。
我建议在节点类中编辑UpdateTextLabel()方法(在此包的Node..m中定义)。在UpdateTextLabel()中,创建底层文本()对象(内置到MATLAB的类),这是分配文本()对象的FontSize属性的好地方。
如果需要进一步帮助,请告诉我。
-
保罗
这太棒了。感谢分享。
我的标签字体有问题。我画了50个有长标签的节点。在我的情况下,圆形图形抑制实际图形的大小,并放大标签字体大小,但我希望它反过来。是否有一种方法可以减少节点标签的字体,并放大图形本身?
1词:棒:)
@Donald,在名为node的文件中。M看哪一行是
集(this.Connection,“颜色”,0.9 * (1 1 1));
把它改成
(此设置。连接、“颜色”(1 1 1));
保罗,
这很有用。有没有办法使隐藏的连接变白(匹配背景)而不是灰色?
大学教师
@ivan,谢谢(:
可以扩展很多功能,但仍然是一个很好的工作。谢谢你!
@MarcVanKralingen你可能有一个例子代码片段来演示这个问题?
其中一条线放在圆的外面。我找不到漏洞。
@Cristi
您可以通过在CircularGraph.m中更改第112行来修复BUG
如果是行(i)
如果row(i) ~= col(i)
你好,非常好看的图表!它是否也适用于有向图,即矩阵的上下三角形都有1 ?
我在矩阵“hc”上运行代码,其有1个值对以下标签进行关流:
> > c.Label(找到(hc (:, 4) > 0))
ans = ' A ' '“ACC MOFC”“MTG”的“”PHG PMC“R””TP”
> > c.Label(找到(hc (4:) > 0))
ans ='a'''''''pcc'''vlpfc''''ai''pi''
然而,当只突出显示节点4,点击标记为ACC'时,只绘制4条线,从ACC'到PCC'、VLPFC'、aI'和pI'。
此外,在查看节点4时,它返回5个连接,尽管在图表上只能看到上述4个连接:
>> C.Dode(4)
ans =.
具有属性的节点:
标签:ACC”
连接(1 x5线):
位置:[-0.9629 -0.2698]
颜色:[0.2095 0.2331 0.6660]
可见:1
程度:0.2833
对这个问题的任何想法?显然,它只绘制与具有更高数字的节点的连接,在此示例中忽略节点2(a')和3(acc)。
谢谢,
Cristi