我正在寻找一种工具来绘制为滑动窗口协议发送的一系列数据包。有很多工具用于绘制带有水平线的消息序列图表,但我希望能够对角线绘制线条,就像这个图像的底部部分一样:
请建议合适的工具。我很可能只对免费版本感兴趣,但如果你对商业广告有一个非常好的建议,你也可以包括它。
答案 0 :(得分:29)
mscgen可以使用 arcgradient 选项执行此操作。这个片段将完全呈现您的示例的第二部分:
msc {
arcgradient=20;
client, server;
client => server [label="SYN"];
server => client [label="SYN + ACK"];
client => server [label="ACK"];
}
如果您复制粘贴此代码段在mscgen_js在线演示中,您会看到。
答案 1 :(得分:13)
我一直在使用websequencediagrams。基本上是mscgen的webapp版本,带有一些不同的花式渲染器。
Websequencediagrams还将其图表呈现作为脚本API公开。现在我将我的图表存储为HTML文件,将它们提交给git,显示不错的差异等等。即,
<html>
<body>
<div class="wsd" wsd_style="rose"><pre>
App->set_state PAUSE
<!-- your wsd diagram commands, etc... -->
</pre></div>
<script type="text/javascript" src="http://www.websequencediagrams.com/service.js"></script>
</body>
</html>
答案 2 :(得分:6)
对于其他有需要的人,有一个很酷的命令行工具mscgen。
答案 3 :(得分:3)
答案 4 :(得分:2)
我发现RFFlow启动非常快,学习快速且易于使用。它在斜坡上做诊断线和文本,适用于各种方块图。它保存为EMF和WMF以及GIF及其原生类型,并且非常好地复制到Word中。
答案 5 :(得分:1)
为了完整起见,这是另一个基于Web浏览器的免费选项:https://sequencediagram.org/
这是他们的音调(来自“关于”):
SequenceDiagram.org是用于创建uml的在线工具/软件 序列图。
解析和绘制图的所有处理均在客户端完成 在用户的Web浏览器中。这不仅使它变得活泼, 但这也意味着您的数据不会通过Internet传输 与其他许多时序图工具一样由于没有 使用后端服务器,也可以离线使用该工具。
有很多序列图工具,但这是唯一的 一种可以让您:
∙Script using a simple text notation when it is most convenient to do so, and ∙Draw the sequence diagram using your mouse at the same time when that is most convenient
换句话说,带来了两全其美的优势。这使得它非常 大型图易于使用,而其他类似工具也难以解决。 它也没有任何广告或不必要的干扰因素。
该工具是由创造力很强的人开发,维护和使用的 从日常工作的角度出发,在日常工作中使用顺序图 对现有工具不是100%满意。
如果您有任何疑问/意见/建议/错误,请联系 info@sequencediagram.org。反馈越多,我们越能做到 优先排序。
答案 6 :(得分:1)
ZenUML是免费的并且在线。它具有奇怪功能,可让您使用任何CSS代码来设置图表样式。
要获得上图,只需在DSL编辑器中放
Client->Server:SYN
并通过放置
在CSS编辑器中发挥作用div[signature="SYN"]>div.message {
transform: rotate(10deg)
}