Convert graphviz (dot) files into draw.io (mxGraph) format
graphviz2drawio requires Python 3 and Graphviz
- On Mac OS these can be installed with Homebrew:
brew update; brew install python3 graphviz
pip3 install pygraphviz --install-option="--include-path=/usr/local/include/graphviz" --install-option="--library-path=/usr/local/lib/graphviz/"
- On Ubuntu / Debian based Linux, install graphviz using:
sudo apt install python3-pip graphviz graphviz-dev
If you encounter installation errors you may need to manually install pygraphviz with links to the graphviz libraries
pip3 install graphviz2drawio --upgrade
Run the conversion app on your graphviz file
graphviz2drawio example.dot
You can them import the output XML file into draw.io
from graphviz2drawio import graphviz2drawio
xml = graphviz2drawio.convert(graph_to_convert)
print(xml)
where graph_to_convert
can be any of a file path, file handle, string of dot language, or PyGraphviz.AGraph object
Please open an issue with your dot file to report crashes or incorrectect conversions.
- PyGraphviz - Python interface to Graphviz
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
This project is linted with pyflakes and makes strict use of Black for code formatting.
- Harold Martin - harold.martin at gmail
- Jonah Caplan