title: Learning Graphical Layout Algorithms
body: <p>During my day-to-day work, I tend to come across data that I want to visualize in a custom manner.  For example, automatically creating a call graph similar to a UML sequence diagram, display digraphs, or visualizing data from a database (scatter plots, 3D contours, etc).</p>
  
  <p>For graphs, I tend to use GraphViz.  For UML-like plots and 3D plots, I would like to write my own software to run under Linux.</p>
  
  <p>I typically program in C++ and prototype in Python.</p>
  
  <p>What books have people used to learn these basic graphical algorithms?  I've seen some nice posts on force-directed layout and various block-style layout algorithms based upon the Cutting and Packing problems -- these are great starts, but I would like a more beginners guide and overview before I jump in.</p>
  
  <ul>
  <li><a href="https://stackoverflow.com/questions/552854/how-to-use-a-bgl-directed-graph-as-an-undirected-one-for-use-in-layout-algorithm">Directed Graph Layout</a></li>
  <li><a href="https://stackoverflow.com/questions/713701/force-directed-layout-in-c">Force directed layout</a></li>
  </ul>