You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Graphviz是否支持嵌套节点形状?需实现方形内嵌菱形效果

在Graphviz中实现嵌套节点形状(方形包菱形)

当然可以实现这种效果!在Graphviz里,HTML-like节点标签是实现自定义嵌套形状最便捷的方案,它能让你灵活组合不同的基础形状,轻松做出方形内部包含菱形的节点。

下面是直接可用的代码示例,能生成你想要的效果:

digraph nested_node_demo {
    # 全局节点设置:禁用默认形状,消除多余边距
    node [shape=none, margin=0]

    # 定义嵌套形状的节点
    my_custom_node [label=<
        <!-- 外层表格模拟方形,BORDER控制外框粗细,CELLPADDING控制内部间距 -->
        <TABLE BORDER="2" CELLBORDER="2" CELLPADDING="15" CELLSPACING="0">
            <TR>
                <!-- 单元格设置为菱形,可自定义背景色和内容 -->
                <TD SHAPE="diamond" BGCOLOR="#e6f3ff">节点内容</TD>
            </TR>
        </TABLE>
    >]
}

关键代码说明:

  • shape=none:告诉Graphviz不要使用默认节点形状,完全由HTML标签定义节点外观。
  • <TABLE>:用来构建外层的方形容器,BORDER控制外框的粗细,CELLPADDING调整菱形和方形边框之间的空白距离,让布局更美观。
  • <TD SHAPE="diamond">:将表格单元格设置为菱形形状,BGCOLOR可以用来区分内外层,让嵌套的视觉层次更清晰。

你可以根据需求随意调整边框粗细、间距、颜色和内部文字,适配不同的视觉风格。

内容的提问来源于stack exchange,提问作者user5507535

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 06:42:35