try with boost graph & graphviz