Есть море методов уложить граф. Даже дерево можно укладывать в разные стороны, с разных сторон (вид сбоку и вид с кроны - он же map, он же s-expressions)
Теперь насчет того как это представлять в структурном виде, сериализовать и десериализовывать, то есть куча способов. Самый простой наверное это JSON, или fbp: https://github.com/flowbased/fbp-spec