dot / Graphviz的更紧凑的分层布局

时间:2013-06-17 14:59:17

标签: graphviz dot

我使用生成以下PDF:enter image description here

我的主要问题是,即使在 A3 上打印,字符尺寸也太小。此外,似乎可以使图形更紧凑。例如。由于左上角有蓝色,绿色和棕色的节点,宽度会延长,但我看不出为什么整个前两行都不能向右移动,导致至少减少20%宽度。我在最后添加 .gv 文件。

由于我自动生成 .gv 文件,因此我只能修改所有节点和边的图层级属性或属性,或更改调用,但我可以'微调坐标或特定节点。

你是否看到任何明显的方法我可以获得更紧凑的布局,允许更大的字符大小?

我使用的调用是:

 dot -Gsize="16.52,11.68" -Gratio="fill"  -Glandscape=false -Gsplines=ortho -Tpdf graph.gv -o graph.gv.pdf

graph.gv文件

digraph G {

node [
    fontname="Times-Bold"
]
concentrate=true
"schemas/toolkit.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="cyan"
    label = "{toolkit.xsd|vt.edu|OAI/metadata/toolkit}"
]
"schemas/simpledc20021212.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="salmon3"
    label = "{simpledc20021212.xsd|other domain|http://purl.org/dc/elements/1.1/}"
]
"schemas/stc-v1.30.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{stc-v1.30.xsd|ivoa|STC/stc-v1.30.xsd}"
]
"schemas/oai_dc.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="limegreen"
    label = "{oai_dc.xsd|openarchives|OAI/2.0/oai_dc/}"
]
"schemas/VOApplication.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{VOApplication.xsd|ivoa|VOApplication/v1.0rc1}"
]
"schemas/xml.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="violetred1"
    label = "{xml.xsd|w3.org|XML/1998/namespace}"
]
"schemas/xlink.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="violetred1"
    label = "{xlink.xsd|w3.org|1999/xlink}"
]
"schemas/OpenSkyNode-v0.2.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{OpenSkyNode-v0.2.xsd|ivoa|SkyNode/v0.2}"
]
"schemas/VORegistry-v1.0.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{VORegistry-v1.0.xsd|ivoa|VORegistry/v1.0}"
]
"schemas/VOResource-v1.0.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{VOResource-v1.0.xsd|ivoa|VOResource/v1.0}"
]
"schemas/ConeSearch-v1.0.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{ConeSearch-v1.0.xsd|ivoa|ConeSearch/v1.0}"
]
"schemas/CEAService.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{CEAService.xsd|ivoa|CEA/v1.0rc1}"
]
"schemas/VOTable.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{VOTable.xsd|ivoa|VOTable/v1.1}"
]
"schemas/CEABase.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{CEABase.xsd|ivoa|CEA/base/v1.0rc1}"
]
"schemas/STAP.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="yellow"
    label = "{STAP.xsd|astrogrid urn|STAP:v1.0}"
]
"schemas/VODataService-v1.0.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{VODataService-v1.0.xsd|ivoa|VODataService/v1.0}"
]
"schemas/SIA-v1.0.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{SIA-v1.0.xsd|ivoa|SIA/v1.0}"
]
"schemas/SSA-v0.4.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{SSA-v0.4.xsd|ivoa|SSA/v0.4}"
]
"schemas/RegistryInterface-v1.0.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{RegistryInterface-v1.0.xsd|ivoa|RegistryInterface/v1.0}"
]
"schemas/SSA-v1.0.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{SSA-v1.0.xsd|ivoa|SSA/v1.0}"
]
"schemas/TAPRegExt-v1.0.xsd" [
    shape = "record"
    style="bold, filled"
    fillcolor="lightskyblue"
    label = "{TAPRegExt-v1.0.xsd|ivoa|TAPRegExt/v1.0}"
]
"NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [
    shape = "record"
    color = "magenta1"
    fillcolor = "lemonchiffon1"
    style="bold, dashed, rounded, filled"
    label = "{ivoa|VOMetadata/v0.1}"
]
"NFhttp://www.w3.org/2001/XMLSchema-instance" [
    shape = "record"
    color = "magenta1"
    fillcolor = "lemonchiffon1"
    style="bold, dashed, rounded, filled"
    label = "{w3.org|2001/XMLSchema-instance}"
]
    "schemas/stc-v1.30.xsd" -> "schemas/xlink.xsd" [color="blue"]
    "schemas/oai_dc.xsd" -> "schemas/simpledc20021212.xsd" [color="blue"]
    "schemas/VOApplication.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/VOApplication.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/OpenSkyNode-v0.2.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/OpenSkyNode-v0.2.xsd" -> "schemas/VODataService-v1.0.xsd" [color="blue"]
    "schemas/OpenSkyNode-v0.2.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/VORegistry-v1.0.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/VORegistry-v1.0.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/VOResource-v1.0.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/ConeSearch-v1.0.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/ConeSearch-v1.0.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/CEAService.xsd" -> "schemas/VOTable.xsd" [color="blue"]
    "schemas/CEAService.xsd" -> "schemas/VODataService-v1.0.xsd" [color="blue"]
    "schemas/CEAService.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/CEAService.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/CEAService.xsd" -> "schemas/CEABase.xsd" [color="blue"]
    "schemas/CEAService.xsd" -> "schemas/VOApplication.xsd" [color="blue"]
    "schemas/CEABase.xsd" -> "schemas/VODataService-v1.0.xsd" [color="blue"]
    "schemas/STAP.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/VODataService-v1.0.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/VODataService-v1.0.xsd" -> "schemas/stc-v1.30.xsd" [color="blue"]
    "schemas/VODataService-v1.0.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/SIA-v1.0.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/SIA-v1.0.xsd" -> "schemas/VODataService-v1.0.xsd" [color="blue"]
    "schemas/SIA-v1.0.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/SSA-v0.4.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/SSA-v0.4.xsd" -> "schemas/VODataService-v1.0.xsd" [color="blue"]
    "schemas/SSA-v0.4.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/RegistryInterface-v1.0.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/SSA-v1.0.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/SSA-v1.0.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/TAPRegExt-v1.0.xsd" -> "schemas/VOResource-v1.0.xsd" [color="blue"]
    "schemas/TAPRegExt-v1.0.xsd" -> "NFhttp://www.ivoa.net/xml/VOMetadata/v0.1" [color="blue"]
    "schemas/TAPRegExt-v1.0.xsd" -> "NFhttp://www.w3.org/2001/XMLSchema-instance" [color="blue"]

}

1 个答案:

答案 0 :(得分:3)

unflatten实用程序可以生成更紧凑的图形。

尝试以下命令行:

unflatten -f -l 2 graph.gv | dot -Gsize="16.52,11.68" -Gratio="fill"  -Glandscape=false -Gsplines=ortho -Tpdf -o graph.gv.pdf

根据您自动生成的各种图表,可能还有其他一些非平坦值可以覆盖所有这些值。