I’m teaching a programming class for kids where we write an Infocom/Zork style text game. The game state is a digraph where each edge follows a cardinal direction (North, South, NorthEast, etc).
I’d like a tool to visualize the game state as my students create it. Graphviz seems a close fit, but I’m having trouble controlling the relative orientation of the vertices.
I’ve found the “node ports” feature and this is pretty close to what I want in terms of rendering edges, but I’ve found that I still have trouble with vertex placement. I’d like a vertext to the “east” of another to be oriented to the right. It doesn’t have to be perfect, but sometimes I’ve found a node to the “east” is placed to the “west” and the edge is curved to compensate.
I’ve found that I can adjust the relative ordering in the digraph to coax things closer to how I would like (see the two attached images – edit: I can only attach one image so I attached the one that looks most like how I want it after ordering the graph by hand), but I’d like an automatic tool my students can run as part of their development cycle.
If I’m trying to fit a square peg in a round hole I’d appreciate any pointers to alternate solutions. I’m a longtime graphviz fan so it’s the tool I reached for first. Thanks much!