边标签由矩阵给出 s = [1 2 3 3 3 3 4 5 6 7 8 9 9 9 10];
t = [7 6 1 5 6 8 2 4 4 3 7 1 6 8 2];
G = graph(s,t);
plot(G)
GPT-4o给出的代码可用,
Matlab
clc;clear;
% 定义边的起点和终点
s = [1 2 3 3 3 3 4 5 6 7 8 9 9 9 10];
t = [7 6 1 5 6 8 2 4 4 3 7 1 6 8 2];
% 定义距离矩阵
distances = [10 15 20 25 30 35 5 10 15 20 25 30 35 40 45]; % 示例距离
% 生成图
G = graph(s, t);
% 绘制图
figure;
h = plot(G, 'Layout', 'force');
% 将节点标签放在节点圆圈内
h.NodeLabel = arrayfun(@num2str, 1:max(max(s), max(t)), 'UniformOutput', false);
% 添加边上距离标签
labeledge(h, s, t, arrayfun(@num2str, distances, 'UniformOutput', false));
title('节点带边标签的拓扑图');
智谱清言给的代码运行时报错的