我正在尝试使用Graphviz生成文件系统的图形。输出应该如下所示:
圆形顶点是目录,方形顶点是文件。黑色边缘表示文件系统元素之间的层次关系。红色边缘表示从一个文件到另一个文件的依赖关系。两种类型的边都是定向的。
我在www.graphviz.org上找到了用于创建层次结构图的示例,但它们只包含层次关系。可以用Graphviz实现吗?如果没有,我可以使用其他软件吗?
答案 0 :(得分:1)
当然,你走了。我不知道你将如何检测依赖关系,但假设你有一个方法,简单的着色属性如show将很好地突出显示它们。同样,确定某些东西是文件还是目录很容易,因此形状选择也很容易。
我已按照我想象的方式编写代码,如果你从目录A向下钻取,但实际上节点,边和子图的排序无关紧要。
digraph X {
ranksep=.5
nodesep=.75
A [shape=circle]
{rank=same A}
A -> B
A -> C
B [shape=circle]
C [shape=square]
{rank=same; B C}
B -> D
B -> E
D [shape=square]
E [shape=square]
{rank=same D E}
D -> E [color=red]
C -> E [color=red]
}