my @color = (color => 'lightgray', fontcolor => 'lightgray'); $g = GraphViz->new(node => {shape => 'box', fontsize => 10}, edge => {fontsize => 9}, rankdir => 'LR'); $g->add_node('email', label => "Email App:\nperiodic DB query\nto send emails"); $g->add_node('report', shape => 'ellipse'); $g->add_node('thank', label => "thanks you\nnote", shape => 'ellipse'); $g->add_node('report XSL', @color); $g->add_node('thank XSL', @color); $g->add_node('XML data', @color); $g->add_edge('email' => 'report', label => "all"); $g->add_edge('email' => 'thank', label => "all"); $g->add_edge('report' => 'report XSL', label => 'use', @color); $g->add_edge('thank' => 'thank XSL', label => 'use', @color); $g->add_edge('report' => 'XML data', label => 'use', @color); $g->add_edge('thank' => 'XML data', label => 'use', @color); $g->as_jpeg("email03.jpg");