Более компактная иерархическая компоновка для dot / Graphviz
Я создаю следующий PDF с точкой:
Моя главная проблема заключается в том, что размер символов слишком мал даже при печати наA3 . Кроме того, кажется, что график можно было бы сделать более компактным. Например, ширина расширяется за счет наличия синих, зеленых и коричневых узлов в верхнем левом углу, но я не вижу причины, по которой все первые два ряда не могли бы быть сдвинуты вправо, чтобы привести к уменьшению ширины по крайней мере на 20%. Я прилагаю .GV файл на конец.
Поскольку я автоматически генерирую .файл gv я могу только изменить атрибуты уровня графа или атрибуты для всех узлов и ребер или изменить вызов dot, но я не могу точно настроить координаты или отдельные узлы.
Видите ли вы какие-либо очевидные способы, которыми я мог бы получить более компактную компоновку, которая позволила бы увеличить размеры символов?
Вызов, который я использую:
dot -Gsize="16.52,11.68" -Gratio="fill" -Glandscape=false -Gsplines=ortho -Tpdf graph.gv -o graph.gv.pdf
Граф.файл 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 ответ:
unflatten
утилита может привести к более компактному графику.Попробуйте использовать следующую командную строку:
unflatten -f -l 2 graph.gv | dot -Gsize="16.52,11.68" -Gratio="fill" -Glandscape=false -Gsplines=ortho -Tpdf -o graph.gv.pdf
В зависимости от ваших различных автоматически генерируемых графиков, возможно, некоторые другие значения для unflatten более уместны, чтобы покрыть их все.