I use
Inkscape and
Dia to draw such diagrams. Examples:
When I have textual data/database/CSV/program output I want to visualize into a graph/net/diagram, I use
Graphviz to convert the node and edge descriptions to an SVG image, then either finesse it in Inkscape or redraw in Dia. For example:
All of these are free and open source, and available (as both downloadable binaries as well as source code) for Windows, Mac, and Linux.