Graphviz-ualizing your data in Drupal

By John Locke on June 24, 2011

I have a lot of respect for graphic designers and people who can come up with clear, concise information in a graphical way. Which is why I'm a huge fan of GraphViz, a crazily effective layout engine for drawing flow charts, graphs, and the like -- you basically throw pairs of labels at it and it draws lines (called "edges" in mathematical graph-speak) between them, doing its best to automatically lay out everything so there's minimal line-crossing.

Graphviz View

For the past couple months, we've been building out an extensive data reporting tool for I-TECH, the International Training and Education Center for Health. They have been formalizing how their various country programs provide reports to funding sources about how grant money has actually been spent.

Each program area has a variety of objectives, and each objective has a number of activities with associated inputs, outputs, indicators of success, and more. This gets complicated quickly, even for those who work in it every day.

To help their personnel find the appropriate boxes to fill in, we created a dynamic "logic model" of their data by creating a plugin for Drupal that allows you to use the standard "Views" module to create a clickable map of their data.

The result is pretty slick! The best part is that every time underlying data is updated, the graph gets automatically updated. And this plugin can be applied to all kinds of different views -- it's not hard-coded to the objects in this particular system.

You can download the module in progress here.

Thumbnail

Add new comment

The content of this field is kept private and will not be shown publicly.

Filtered HTML

  • Web page addresses and email addresses turn into links automatically.
  • Allowed HTML tags: <a href hreflang> <em> <strong> <blockquote cite> <cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h1> <h2 id> <h3 id> <h4 id> <h5 id> <p> <br> <img src alt height width>
  • Lines and paragraphs break automatically.

Drupal Canvas — Block HTML (locked)

  • Allowed HTML tags: <strong> <em> <u> <a href> <p> <br> <ul> <ol> <li>

Drupal Canvas — Inline HTML (locked)

  • Allowed HTML tags: <strong> <em> <u> <a href>

About the Author

Profile picture for user John Locke

John Locke is the lead developer and founder of Freelock, LLC. In addition to being a proficient web developer, he is an experienced technical writer, network administrator, and all around problem solver. He has worked with computers since 1984, and currently advises small businesses on open source software.

More Like This

Drupal, table sorting, data management, content reporting, HTML tables
🕑Jan 28, 2025 🖋John Locke 💬0

Ask Freelock: Sortable tables?

Kevin asks,

Is there a Drupal Add On or Widget that would allow users to sort tables as they're displayed on the website?

Hi, Kevin,

Several options here: