./ontology_viz.py -o test.dot test.ttl -O ontology.ttl
dot -Tpng -o test.png test.dot
- Use
-o
to indicate the path of output file - Use
-O
to indicate the input ontology (Optional). - Use
-C
to indicate the configuration file (Optional).max_label_length
: config the max length of labels. If the text exceeds the length, exceeded part will be replaced with “…”. Default value is0
.blacklist
: config the predicate that you don’t want to see in the graph.class_inference_in_object
: config the predicate that can inference the object is aClass
, even if the class doesn’t defined in the ontology.label_property
: config the predicate that used for labeling nodes, if such a label exists, it will display inside the node.tooltip_property
: config the predicate that contains the tooltip texts.bnode_regex
: a list of regexes, if an uri matches, then it will be dispaly as a blank node without its uri nor label. It can be useful if you have a lot of reifications.colors
: config the colors of nodesclass
,literal
,instance
can accept HEX value(e.g."#ff0000"
), MATLAB style(e.g."r"
), and color name (e.g."red"
).
"colors": { "class": "#ff0000", "literal": "r", "instance": "red", }
instance
can also accept a dict value to specify the color of each class instance. And use"default"
to to set color for undefined instances.
"instance": { "https://tac.nist.gov/tracks/SM-KBP/2018/ontologies/SeedlingOntology#Facility": "#a6cee3", "default": "#ffff99" }
filled
: config whether fill the node, default value:true
.
- Classes defined in the ontology will be omitted in the output graph. This action can be switched with argument
-V
.
-K
to specify which layout algorithm to use. E.g.-Kneato
and-Ksfdp
. Notice that inorder to usesfdp
layout algorithm, you will need to build your graphviz with GTS.-T
to specify the output format.-G
to set a graph attribute. E.g.-Goverlap=prism
In order to use this tool, you’ll need to make sure you have rdflib installed.
In order to convert dot
into png
or svg
image, you will need Graphviz.