I want to print a board for Scotland Yard, a graph-based board game with 200 nodes and many edges (each edge can be of 3 different colors). The board looks like this:
If I want to programmatically draw a board for this game, I'll need the following features:
- Colors, nodes should be able to be multiple colors (e.g. orange circle inside teal rectangle)
- Ability to make edges and nodes very bold / thick
- Deals well with clutter (maybe I could set via a parameter how spaced-out the nodes would be in the rendering)
- Library in one of C, C++, Python, or Java
- Free as in beer
All signs are pointing to graphviz as the most popular such library, my questions for someone who has used graphviz are:
- Does graphviz support the features I want?
- Which programming language has the easiest graphviz libraries to use?
- What other graph-drawing libraries meet these requirements?