gpt4 book ai didi

gstreamer - Graphviz 子图看起来像记录形状的节点

转载 作者:行者123 更新时间:2023-12-02 23:33:39 31 4
gpt4 key购买 nike

我正在尝试为 GStreamer 应用程序生成图形,其中有许多嵌套箱。每个 bin 都有一些元素,但父 bin 的 bin 看起来像任何其他具有焊盘(接收器和源)的常见元素。我想将其可视化,但在 Graphviz 中我无法生成嵌套节点,所以我必须通过子图来实现。不幸的是,子图没有像记录形状这样的节点选项。在我的图中,每个节点都有记录形状,但子图不能。示例:

digraph G
{
graph [rankdir = TD]
node [shape = record]

subgraph cluster_player
{
label = "player"

subgraph cluster_bin1
{
label = "bin1"

bin1_sink1 [label = "sink1"]
bin1_sink2 [label = "sink2"]
obj1 [
label = "{ { <sink1> sink1 | <sink2> sink2 } | obj1 | { <src1> src1 | <src2> src2 } }"
]
bin1_src1 [label = "src1"]
bin1_src2 [label = "src2"]

bin1_sink1:s -> obj1:sink1:n []
bin1_sink2:s -> obj1:sink2:n []
obj1:src1:s -> bin1_src1:n []
obj1:src2:s -> bin1_src2:n []
}

bin1_src1:s -> bin2_sink1:n []
bin1_src2:s -> bin2_sink2:n []

subgraph cluster_bin2
{
label = "bin2"

bin2_sink1 [label = "sink1"]
bin2_sink2 [label = "sink2"]
bin2_obj1 [
label = "{ { <sink1> sink1 | <sink2> sink2 } | obj1 | { <src1> src1 } }"
]
bin2_obj2 [
label = "{ { <sink1> sink1 } | obj2 | { <src1> src1 } }"
]
bin2_src1 [label = "src1"]

bin2_sink1:s -> bin2_obj1:sink1:n []
bin2_sink2:s -> bin2_obj1:sink2:n []
bin2_obj1:src1:s -> bin2_obj2:sink1:n []
bin2_obj2:src1:s -> bin2_src1:n []
}
}
}

enter image description here

正如您现在所看到的,垃圾箱中的源和接收器就像普通元素一样,但我希望它们看起来像“obj1”中的记录。怎么做?如果不可能的话也许还有其他语言有这个功能?

最佳答案

Graphviz 子图是容器。它们不支持您正在寻找的记录符号或形状属性。 shape仅限于节点,而子图则不然。

关于gstreamer - Graphviz 子图看起来像记录形状的节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15836829/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com