如何使用动画线

22次浏览(最近30天)
Kashfia Mahin
Kashfia Mahin 2019年8月27日
评论道: Kashfia Mahin2019年8月27日
我想在管道网络中使用动画。这是一个代码示例:
S = [1 2 3];
T = [2 3 4];
图G = (s, t);
h =情节(G);
图的结果是 first.jpg
我想要一个带有这个网络s的动画,它可以显示从一步一步创建边,比如1- >2,2- bbb3等等。我编写代码。
h = animatedline
S = [1 2 3];
T = [2 3 4];
轴([5,3.5,2、14])
i = 1:长度(s)
图g = (s (i)、t(我));
p =情节(g);
drawnow
结束
但是这个数字 untitled.jpg
我不期望这个数字。我也不知道结构是否满足动画模式。

接受的答案

凯利卡尼
凯利卡尼 2019年8月27日
这里有几点注意事项……
首先,绘制图形对象创建的是一个GraphPlot对象,而不是一条线,因此它不能与animatedline一起使用(开箱即用)。但是,您可以像在示例中那样通过循环获得相同的动画效果(更新GraphPlot的属性可能比每次重画更有效,但在这个特定的示例中,额外的工作并不值得)。
其次,如果您没有指定图形节点的x/y坐标,那么graph命令将根据图形的某些属性选择它们。这些默认的x/y坐标会根据边的不同而改变。假设您不想这样,您需要手动设置坐标。
最后,要注意构建图表的方式。你想保留所有的节点,而不仅仅是那些有边的节点。
S = [1 2 3];
T = [2 3 4];
Nnode = max([s t]);
x = 1(1、nnode);
y = 1: nnode;
图g = (s, t);
轴([5,3.5,2、14]);
持有
2 = 1:长度(s)
gplt = g;
GPLT = rmedge(GPLT, s(ii+1:end), t(ii+1:end));
如果2 > 1
删除(p);
结束
p =情节(gplt“xdata”, x,“ydata”, y,“nodecolor”“k”“edgecolor”“b”);
drawnow
暂停(1);
结束
1评论
Kashfia Mahin
Kashfia Mahin 2019年8月27日
非常感谢

登录评论。

更多的答案(0)

标签

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!