当前位置: 首页 > news >正文

draw topology in matlab

figi = figure(1);
seed = 42;  % select a seed
rng(seed, 'twister');router_num = 5;
host_num = 0;     % zero means using the default value
edge_spds_r = [1e6 2e6 4e6];  % edge rates for routers
% dropprobs_r = 0.1;
dropprobs_r = 0.1;    % 原来是0edge_spds_rh = Inf;
dropprobs_rh = 0.2;     % 原来是0attmt_assumpt = 'evenly'; % attachment assumption
topotype = 'grid25';
% topotype = 'twohop';
[A, Aspds, Adrps, ur, vh, topoinfo] = genA(topotype, edge_spds_r, dropprobs_r, router_num, ...host_num, attmt_assumpt, edge_spds_rh, dropprobs_rh);router_num = topoinfo.router_num;
A = triu(A(1:router_num, 1:router_num));
[u, v] = find(sparse(A));
edges = [u, v];Aspds = triu(Aspds(1:router_num, 1:router_num));xy = [topoinfo.x_r(:) topoinfo.y_r(:)];x = xy(:, 1);y = xy(:, 2);G = graph(edges(:, 1), edges(:, 2));idxOut = findedge(G, edges(:, 1), edges(:, 2));Ghdl = plot(G, 'XData', x, 'YData', y, 'NodeLabel', {}, 'EdgeColor', 'k', ...'MarkerSize', 12, 'NodeColor', 'yellow');
% scatter(x, y, 20, 'MarkerEdgeColor', 'k',...
%               'MarkerFaceColor', 'yellow',...
%               'LineWidth', .5);
% labeledge(Ghdl, [3 12 7 16], [3 12 7 16]);
% Ghdl.EdgeFontSize = 14;[u, v] = find(sparse(Aspds == edge_spds_r(1)));
edges_lspds = [u, v];idxOut_lspds = findedge(G, edges_lspds(:, 1), edges_lspds(:, 2));[u, v] = find(sparse(Aspds == edge_spds_r(2)));
edges_mspds  = [u, v];idxOut_mspds = findedge(G, edges_mspds(:, 1), edges_mspds(:, 2));idxOut_hspds = setdiff(idxOut, [idxOut_lspds; idxOut_mspds]);highlight(Ghdl, edges_lspds(:, 1), edges_lspds(:, 2), 'EdgeColor', 'g');
highlight(Ghdl, edges_mspds(:, 1), edges_mspds(:, 2), 'EdgeColor', 'b', 'LineWidth', 1.5);[sOut,tOut] = findedge(G, idxOut_hspds);highlight(Ghdl, sOut, tOut, 'LineWidth', 2);circles(x, y, 3, 'edgecolor','k','facecolor','none', 'facealpha', 1);axis equal% highlight(Ghdl, 1:numel(x), 'MarkerSize', 10);
text(x, y, num2cell(1:numnodes(G)), 'FontSize', 8, 'HorizontalAlignment', 'center', 'VerticalAlignment', 'middle');
axis equal
axis tight
axis('off');fname = topotype;
hold onL(1) = plot(nan, nan, 'g-');
L(2) = plot(nan, nan, 'b-', 'LineWidth', 1.5);
L(3) = plot(nan, nan, 'k-', 'LineWidth', 2);legend(L, {'1 Mbps', '2 Mbps', '4 Mbps'}, 'location', 'eastoutside', 'FontSize', 8)% plot(rand(3))
% lgd = legend('a','b','c');
% c = lgd.TextColor;
% lgd.TextColor = 'red';exportgraphics(figi, [fname '.png'],'Resolution', 600);
http://www.jsqmd.com/news/351344/

相关文章:

  • Python计算机毕设之基于Python的武城市周边租房管理系统基于python的租房管理系统的设计与实现(完整前后端代码+说明文档+LW,调试定制等)
  • AIGC完全指南:从理论到实践的全方位学习,从大模型到应用落地的全链路实践与未来趋势
  • 离职数据注意事项
  • 【毕业设计】python基于Web的酒店住宿管理系统的设计与实现(源码+文档+远程调试,全bao定制等)
  • Spring Boot 启动慢?启动过程深度解析与优化策略 - 实践
  • 二阶线性自抗扰LADRC+位置环永磁同步直线电机PMLSM、位置电流PI双闭环控制simulink仿真
  • javascript之二重循环练习
  • 【毕业设计】基于python的租房管理系统的设计与实现(源码+文档+远程调试,全bao定制等)
  • 大模型技术架构与选型:避免10倍成本差异的实用指南(值得收藏)
  • 2026 春节送礼指南:旺旺年味礼包,兼顾性价比与体面的零食首选 - 速递信息
  • 【计算机毕业设计案例】基于python公寓出租管理系统基于python的租房管理系统的设计与实现(程序+文档+讲解+定制)
  • 知识图谱在AI原生法律智能中的应用与挑战
  • 深入解析:【设计模式笔记03】:里氏代换原则和依赖倒置原则
  • 宣和:以创新与品质成为智能麻将机行业领军标杆 - 速递信息
  • BISHI13 九倍平方数
  • 【课程设计/毕业设计】基于python的酒店预订管理系统在线管理、预订、入住和结算python基于Web的酒店住宿管理系统的设计与实现【附源码、数据库、万字文档】
  • 冲锋衣生产源头厂家常见问题解答(2026专家版) - 速递信息
  • 【收藏必看】深入理解Transformer架构:大模型优化的关键与代码实现详解
  • Qwen3-32B大模型vLLM启动建议
  • CANN调试与可视化:从黑盒训练到透明洞察的实战指南
  • 【收藏】LangChain从入门到实战:大模型应用开发完全指南 | 程序员必学
  • CANN性能调优:从瓶颈定位到极致优化的实战指南
  • Python毕设项目:基于python的租房管理系统的设计与实现(源码+文档,讲解、调试运行,定制等)
  • AI写作助手对比测评:Notion AI vs Jasper vs Copy.ai
  • 数据不够用?别急着骂业务,数据增强和合成数据真能救命
  • qwen3-32b的maxToken设置建议
  • CANN模型转换:跨框架模型的无缝迁移与优化实战
  • Python毕设项目:python基于Web的酒店住宿管理系统的设计与实现(源码+文档,讲解、调试运行,定制等)
  • C++错误 “tolower”: 不是“std”的成员
  • Python计算机毕设之python基于协同过滤算法的天气穿搭推荐系统Python基于深度学习的服装搭配智能推荐系统(完整前后端代码+说明文档+LW,调试定制等)