| |
|
|
r2 - 07 Feb 2014 - 16:16 - WikiGuest |
|
r1 - 07 Feb 2014 - 16:16 - UnknownUser |
|
| |
|
|
Directed Graph Plugin Examples |
|
Directed Graph Plugin Examples |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Howto |
|
Howto |
|
|
|
HowtoDirectedGraphs has a basic howto on creating directed graphs using dot. The below examples show some of the capabilities of the DirectedGraphPlugin |
|
HowtoDirectedGraphs has a basic howto on creating directed graphs using dot. The below examples show some of the capabilities of the DirectedGraphPlugin |
|
|
|
Examples |
|
Examples |
|
|
|
Cole's example |
|
Cole's example |
|
|
|
You type: |
|
You type: |
|
|
|
digraph G {
subgraph cluster_c0 {a0 -> a1 -> a2 -> a3}
subgraph cluster_c1 {
b0 -> b1 -> b2 -> b3;
label="Group B";
}
x -> a0 [style=dotted];
x -> b0;
a1 -> a3 [style=bold, label="a1 to a3"];
a3 -> a0;
a0 [shape=box, fontname=Courier, fontsize=11];
a1 [color=red];
a3 [label="Label\nfor a3"];
label="Cole's Example";
}
|
|
digraph G {
subgraph cluster_c0 {a0 -> a1 -> a2 -> a3}
subgraph cluster_c1 {
b0 -> b1 -> b2 -> b3;
label="Group B";
}
x -> a0 [style=dotted];
x -> b0;
a1 -> a3 [style=bold, label="a1 to a3"];
a3 -> a0;
a0 [shape=box, fontname=Courier, fontsize=11];
a1 [color=red];
a3 [label="Label\nfor a3"];
label="Cole's Example";
}
|
|
|
|
You get: (simulated)
 | You get: (if installed) digraph G { subgraph cluster_c0 {a0 -> a1 -> a2 -> a3} subgraph cluster_c1 { b0 -> b1 -> b2 -> b3; label="Group B"; } x -> a0 [style=dotted]; x -> b0; a1 -> a3 [style=bold, label="a1 to a3"]; a3 -> a0; a0 [shape=box, fontname=Courier, fontsize=11]; a1 [color=red]; a3 [label="Label\nfor a3"]; label="Cole's Example"; } |
|
|
You get: (simulated)
 | You get: (if installed) digraph G { subgraph cluster_c0 {a0 -> a1 -> a2 -> a3} subgraph cluster_c1 { b0 -> b1 -> b2 -> b3; label="Group B"; } x -> a0 [style=dotted]; x -> b0; a1 -> a3 [style=bold, label="a1 to a3"]; a3 -> a0; a0 [shape=box, fontname=Courier, fontsize=11]; a1 [color=red]; a3 [label="Label\nfor a3"]; label="Cole's Example"; } |
|
|
|
|
Clientside imagemap (clickable nodes and edges) |
|
Clientside imagemap (clickable nodes and edges) |
|
|
|
You type: |
|
You type: |
|
|
|
digraph G {
URL="http://foswiki.org";
Plugins [URL="http://foswiki.org/Extensions"];
DirectedGraphPlugin [URL="http://foswiki.org/Extensions/DirectedGraphPlugin"];
Plugins -> DirectedGraphPlugin;
}
|
|
digraph G {
URL="http://foswiki.org";
Plugins [URL="http://foswiki.org/Extensions"];
DirectedGraphPlugin [URL="http://foswiki.org/Extensions/DirectedGraphPlugin"];
Plugins -> DirectedGraphPlugin;
}
|
|
|
|
You get: (simulated)
 | You get: (if installed) digraph G { URL="http://www.foswiki.org"; Plugins [URL="http://foswiki.org/Extensions/PluginPackage"]; DirectedGraphPlugin [URL="http://foswiki.org/Extensions/DirectedGraphPlugin"]; Plugins -> DirectedGraphPlugin; } | You get: (simulated, antialiasing on)
 | You get: (if installed, antialiasing on) digraph G { URL="http://www.foswiki.org"; Plugins [URL="http://foswiki.org/Extensions/PluginPackage"]; DirectedGraphPlugin [URL="http://foswiki.org/Extensions/DirectedGraphPlugin"]; Plugins -> DirectedGraphPlugin; } |
|
|
You get: (simulated)
 | You get: (if installed) digraph G { URL="http://www.foswiki.org"; Plugins [URL="http://foswiki.org/Extensions/PluginPackage"]; DirectedGraphPlugin [URL="http://foswiki.org/Extensions/DirectedGraphPlugin"]; Plugins -> DirectedGraphPlugin; } | You get: (simulated, antialiasing on)
 | You get: (if installed, antialiasing on) digraph G { URL="http://www.foswiki.org"; Plugins [URL="http://foswiki.org/Extensions/PluginPackage"]; DirectedGraphPlugin [URL="http://foswiki.org/Extensions/DirectedGraphPlugin"]; Plugins -> DirectedGraphPlugin; } |
|
|
|
|
Usecase description / state diagram |
|
Usecase description / state diagram |
|
|
|
To view the dot input for this example, click the [dot] link located below the diagram. |
|
To view the dot input for this example, click the [dot] link located below the diagram. |
|
|
|
You get: (simulated)
 | You get: (if installed) digraph G { size="9"; graph [rankdir="TB" label="1st Time Use/Phone Registration" fontsize=12 bgcolor="#eeeeff"]; node [shape=box fontsize=9]; edge [color=blue fontsize=8 font="Arial"]; cell_number_entry [label="Cell Number Entry"]; welcome [label="Welcome Page"]; member_name_creation [label="Member Name Creation"]; password_creation [label="Password Creation"]; member_name_unavailable [label="Member Name Unavailable"]; email_entry [label="Email Entry"]; zip_code_entry [label="Zip Code Entry"]; tos [label="TOS"]; decline_confirmation [label="Decline Confirmation"]; registration_confirmation [label="Registration Confirmation"]; member_name_entry [label="Member Name Entry"]; password_entry [label="Password Entry"]; confirm_phone_number [label="Confirm Phone Number"]; unsuccessfull_sign_in [label="Unsuccessfull Sign In"]; email_confirmation [label="Email Confirmation"]; main_menu [label="Main Menu"]; initial_screen [label="Initial Screen"]; exit_application [label="Exit the Application"]; welcome -> initial_screen [label="First Time"] initial_screen -> member_name_creation [label="Register"]; initial_screen -> member_name_entry [label="Sign In"]; member_name_creation -> password_creation [label="Valid Member Name" dir="both"]; member_name_creation -> member_name_unavailable [label="Invalid Member Name" dir="both"]; welcome -> password_creation; password_creation -> cell_number_entry [dir="both"]; member_name_entry -> password_entry [dir="both"]; cell_number_entry -> email_entry [dir="both"]; password_entry -> confirm_phone_number [label="Auth. Successful" dir="both"]; password_entry -> unsuccessfull_sign_in [label="Auth. Unsuccessful"]; email_entry -> zip_code_entry [dir="both"]; zip_code_entry -> tos [dir="both"]; confirm_phone_number -> main_menu; unsuccessfull_sign_in -> member_name_entry [label="Try Again" constraint="false"]; unsuccessfull_sign_in -> email_confirmation; tos -> decline_confirmation [label="Decline" dir="both"]; tos -> registration_confirmation [label="Accept"]; decline_confirmation -> exit_application [label="Yes"]; registration_confirmation -> main_menu [label="10 Sec/NEXT"]; } |
|
|
You get: (simulated)
 | You get: (if installed) digraph G { size="9"; graph [rankdir="TB" label="1st Time Use/Phone Registration" fontsize=12 bgcolor="#eeeeff"]; node [shape=box fontsize=9]; edge [color=blue fontsize=8 font="Arial"]; cell_number_entry [label="Cell Number Entry"]; welcome [label="Welcome Page"]; member_name_creation [label="Member Name Creation"]; password_creation [label="Password Creation"]; member_name_unavailable [label="Member Name Unavailable"]; email_entry [label="Email Entry"]; zip_code_entry [label="Zip Code Entry"]; tos [label="TOS"]; decline_confirmation [label="Decline Confirmation"]; registration_confirmation [label="Registration Confirmation"]; member_name_entry [label="Member Name Entry"]; password_entry [label="Password Entry"]; confirm_phone_number [label="Confirm Phone Number"]; unsuccessfull_sign_in [label="Unsuccessfull Sign In"]; email_confirmation [label="Email Confirmation"]; main_menu [label="Main Menu"]; initial_screen [label="Initial Screen"]; exit_application [label="Exit the Application"]; welcome -> initial_screen [label="First Time"] initial_screen -> member_name_creation [label="Register"]; initial_screen -> member_name_entry [label="Sign In"]; member_name_creation -> password_creation [label="Valid Member Name" dir="both"]; member_name_creation -> member_name_unavailable [label="Invalid Member Name" dir="both"]; welcome -> password_creation; password_creation -> cell_number_entry [dir="both"]; member_name_entry -> password_entry [dir="both"]; cell_number_entry -> email_entry [dir="both"]; password_entry -> confirm_phone_number [label="Auth. Successful" dir="both"]; password_entry -> unsuccessfull_sign_in [label="Auth. Unsuccessful"]; email_entry -> zip_code_entry [dir="both"]; zip_code_entry -> tos [dir="both"]; confirm_phone_number -> main_menu; unsuccessfull_sign_in -> member_name_entry [label="Try Again" constraint="false"]; unsuccessfull_sign_in -> email_confirmation; tos -> decline_confirmation [label="Decline" dir="both"]; tos -> registration_confirmation [label="Accept"]; decline_confirmation -> exit_application [label="Yes"]; registration_confirmation -> main_menu [label="10 Sec/NEXT"]; } |
|
|
|
|
Component architecture (inline SVG) |
|
Component architecture (inline SVG) |
|
|
|
This is a typical example of a component architecture drawing (This kind of graph is also easy to do in Foswiki:Extensions.JHotDrawPlugin if you like the look but you prefer to draw it manually using your mouse). |
|
This is a typical example of a component architecture drawing (This kind of graph is also easy to do in Foswiki:Extensions.JHotDrawPlugin if you like the look but you prefer to draw it manually using your mouse). |
|
|
|
Click the [dot] link located below the diagram to view the input. Note that this example is an inline SVG with fallback to PNG |
|
Click the [dot] link located below the diagram to view the input. Note that this example is an inline SVG with fallback to PNG |
|
|
|
You get: (simulated)
 | You get: (if installed) digraph G { graph [rankdir=LR, size="9.5,2.5"] subgraph cluster_0 { graph [label=User] edge [style=dashed] browser [label="WWW\nbrowser" URL="http://www.mozilla.org/"] svgplugin [label="SVG Plugin" URL="http://www.adobe.com/svg/viewer/install/old.html"] pdfplugin [label="PDF Plugin" URL="http://www.adobe.com/support/downloads/product.jsp?product=10&platform=unix"] svgplugin -> browser svgplugin -> browser [dir=back] pdfplugin -> browser pdfplugin -> browser [dir=back] { graph [rank=same] pngpage [label=PNG shape=box URL="/webdot/webdot/demo.dot.dot.png"] svgpage [label=SVGZ shape=box URL="/webdot/webdot/demo.dot.dot.svgz"] pdfpage [label=PDF shape=box URL="/webdot/webdot/demo.dot.dot.pdf"] } pngpage -> browser [dir=none style=dotted] svgpage -> svgplugin [dir=none style=dotted] pdfpage -> pdfplugin [dir=none style=dotted] } subgraph cluster_1 { graph [label="Server 1"] httpd1 [label=httpd URL="http://httpd.apache.org/"] webdot [label="/cgi-bin/webdot" style=filled fillcolor=yellow color=black URL="/webdot/"] } subgraph cluster_2 { graph [label="Server 2"] httpd2 [label=httpd URL="http://httpd.apache.org/"] "demo.dot" [shape=box URL="/webdot/demo.dot"] httpd2 -> "demo.dot" [dir=none style=dotted] } browser -> httpd1 -> webdot -> httpd2 browser -> httpd1 -> webdot -> httpd2 [dir=back] } |
|
|
You get: (simulated)
 | You get: (if installed) digraph G { graph [rankdir=LR, size="9.5,2.5"] subgraph cluster_0 { graph [label=User] edge [style=dashed] browser [label="WWW\nbrowser" URL="http://www.mozilla.org/"] svgplugin [label="SVG Plugin" URL="http://www.adobe.com/svg/viewer/install/old.html"] pdfplugin [label="PDF Plugin" URL="http://www.adobe.com/support/downloads/product.jsp?product=10&platform=unix"] svgplugin -> browser svgplugin -> browser [dir=back] pdfplugin -> browser pdfplugin -> browser [dir=back] { graph [rank=same] pngpage [label=PNG shape=box URL="/webdot/webdot/demo.dot.dot.png"] svgpage [label=SVGZ shape=box URL="/webdot/webdot/demo.dot.dot.svgz"] pdfpage [label=PDF shape=box URL="/webdot/webdot/demo.dot.dot.pdf"] } pngpage -> browser [dir=none style=dotted] svgpage -> svgplugin [dir=none style=dotted] pdfpage -> pdfplugin [dir=none style=dotted] } subgraph cluster_1 { graph [label="Server 1"] httpd1 [label=httpd URL="http://httpd.apache.org/"] webdot [label="/cgi-bin/webdot" style=filled fillcolor=yellow color=black URL="/webdot/"] } subgraph cluster_2 { graph [label="Server 2"] httpd2 [label=httpd URL="http://httpd.apache.org/"] "demo.dot" [shape=box URL="/webdot/demo.dot"] httpd2 -> "demo.dot" [dir=none style=dotted] } browser -> httpd1 -> webdot -> httpd2 browser -> httpd1 -> webdot -> httpd2 [dir=back] } |
|
|
|
|
Simple LAN setup (custom icons / shapefiles) |
|
Simple LAN setup (custom icons / shapefiles) |
|
|
|
This type of graph can also easily be extended, for instance making network nodes clickable, pointing to asset databases or similar. |
|
This type of graph can also easily be extended, for instance making network nodes clickable, pointing to asset databases or similar. |
|
|
|
Click the [dot] link below the diagram to view the input. |
|
Click the [dot] link below the diagram to view the input. |
|
|
|
You get: (simulated)
 | You get: (if installed) digraph G { size="2,3!"; dpi="100"; edge [arrowhead=none color=blue]; node [fontcolor=blue color=white]; Workstation [shapefile="Sun_Workstation.png"]; Printer [shapefile="Printer.png"]; Internet [shapefile="Cloud-Filled.png"]; Router [shapefile="Wireless_Router.png"]; Switch [shapefile="Workgroup_Switch.png"]; Laptop [shapefile="Laptop.png"]; Workstation -> Switch; Printer -> Switch; Switch -> Router; Router -> Internet; Laptop -> Router [style=dotted]; } | You get: (if installed, antialiased) digraph G { size="2,3!"; dpi="100"; edge [arrowhead=none color=blue]; node [fontcolor=blue color=white]; Workstation [shapefile="Sun_Workstation.jpg"]; Printer [shapefile="Printer.jpg"]; Internet [shapefile="Cloud-Filled.jpg"]; Router [shapefile="Wireless_Router.jpg"]; Switch [shapefile="Workgroup_Switch.jpg"]; Laptop [shapefile="Laptop.jpg"]; Workstation -> Switch; Printer -> Switch; Switch -> Router; Router -> Internet; Laptop -> Router [style=dotted]; } |
|
|
You get: (simulated)
 | You get: (if installed) digraph G { size="2,3!"; dpi="100"; edge [arrowhead=none color=blue]; node [fontcolor=blue color=white]; Workstation [shapefile="Sun_Workstation.png"]; Printer [shapefile="Printer.png"]; Internet [shapefile="Cloud-Filled.png"]; Router [shapefile="Wireless_Router.png"]; Switch [shapefile="Workgroup_Switch.png"]; Laptop [shapefile="Laptop.png"]; Workstation -> Switch; Printer -> Switch; Switch -> Router; Router -> Internet; Laptop -> Router [style=dotted]; } | You get: (if installed, antialiased) digraph G { size="2,3!"; dpi="100"; edge [arrowhead=none color=blue]; node [fontcolor=blue color=white]; Workstation [shapefile="Sun_Workstation.jpg"]; Printer [shapefile="Printer.jpg"]; Internet [shapefile="Cloud-Filled.jpg"]; Router [shapefile="Wireless_Router.jpg"]; Switch [shapefile="Workgroup_Switch.jpg"]; Laptop [shapefile="Laptop.jpg"]; Workstation -> Switch; Printer -> Switch; Switch -> Router; Router -> Internet; Laptop -> Router [style=dotted]; } |
|
|
|
|
Related Topics: HowtoDirectedGraphs |
|
Related Topics: HowtoDirectedGraphs |
|
| |
|
|
r2 - 07 Feb 2014 - 16:16 - WikiGuest |
|
r1 - 07 Feb 2014 - 16:16 - UnknownUser |
|
| |