![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/177528/image.png)
Info
此问题已关闭。 请重新打开它进行编辑或回答。
How can I make this graphic?
2 次查看(过去 30 天)
显示 更早的评论
I want to know how can I make a graphic (see below). How can I connect the numbers from the first column the numbers with the second columns. And I need to make the lines connecting the points become thicker to be more links. I make this command for calc %.
maxdata = max(data(:,1:2));
counts = accumarray(data(:,1:2), 1, [maxdata(1,1), maxdata(1,2)]);
for i = 1:maxdata(1,1)
for j = 1:maxdata(1,2)
link(i,j) = counts(i,j)
end
end
somalink = sum(link(:));
porcentagem = link./somalink.*100;
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/151627/image.png)
0 个评论
回答(1 个)
Chad Greene
2015-6-25
编辑:Chad Greene
2015-6-25
No need for loops. And note, when you do use loops, try to avoid using i and j as variable names--they're the imaginary unit. Overwriting i and j rarely causes a problem, but when it does it can be tough to debug.
A = [9 1 2 4;
9 2 1 2;
8 2 2 6;
6 1 3 3;
3 4 1 3;
8 2 2 8;
8 1 1 5;
6 1 2 8;
6 1 3 8;
9 3 2 9;
8 4 2 6;
1 2 1 1;
10 4 3 9;
4 2 3 9;
8 5 2 5;
5 2 2 1;
2 3 3 8;
7 3 1 1;
2 2 3 2;
3 5 2 1;
6 3 3 2;
5 5 1 3;
5 3 2 9;
3 5 3 5;
3 3 2 7];
figure
plot([1 2],A(:,1:2),'ko-','markersize',20,'linewidth',2,'markerfacecolor','w')
axis([0 3 0 11])
axis off
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/177528/image.png)
4 个评论
Image Analyst
2015-6-26
编辑:Image Analyst
2015-6-26
OK, your new/edited graphic above helps explain the thickness question. Note the 'linewidth' option in plot. You'll have to plot the lines one at a time, varying the linewidth parameter for each line segment.
Now, what about the line length question? Your answer seems to have been cut off.
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!