This Graphviz DOT file defines a directed graph named apply
with a specified font, direction, and node properties, and includes subgraphs for cluster_available_plans
with nested subclusters. The graph has a hierarchical structure with a main graph and subclusters containing nodes with specific shapes and labels.
%%
dot
digraph
apply
{
label = 'High level architecture'
rankdir = LR;
fontname = Helvetica
node[fontname = Helvetica, width = 1.8, height = 0.8]
edge[fontname = Helvetica, fontsize = 12, fontcolor = blue, labeldistance = 1.8]
subgraph
cluster_available_plans
{
label = 'ECommerce.Core'
subgraph
cluster_available_plans
{
label = 'ECommerce.Entitlement'
subgraph
cluster_available_plans
{
label = 'ECommerce.Identity'
integrations[shape = box, label = 'ECommerce.Integrations']
myact[shape = box, label = 'ECommerce.MyAct']
}
}
}
}
digraph high_level_architecture {
label = 'High level architecture';
rankdir = LR;
fontname = Helvetica;
node[fontname = Helvetica, width = 1.8, height = 0.8];
edge[fontname = Helvetica, fontsize = 12, fontcolor = blue, labeldistance = 1.8];
subgraph cluster_available_plans {
label = 'ECommerce.Core';
subgraph cluster_entitlement {
label = 'ECommerce.Entitlement';
subgraph cluster_identity {
label = 'ECommerce.Identity';
// Integrate with various services
integrations[shape = box, label = 'ECommerce.Integrations | Integrations'];
// Custom implementation
myact[shape = box, label = 'ECommerce.MyAct | Custom Implementation'];
}
}
}
}
Code Breakdown: Graphviz DOT File
This is a Graphviz DOT file that defines a directed graph with nodes and edges. Here's a breakdown of the code:
digraph apply {... }
: Defines a directed graph named apply
.label = 'High level architecture'
: Sets the label for the graph.rankdir = LR
: Specifies the direction of the graph (left to right).fontname = Helvetica
: Sets the font family for the graph.node[fontname = Helvetica, width = 1.8, height = 0.8]
: Defines the properties for nodes in the graph (font family, width, and height).edge[fontname = Helvetica, fontsize = 12, fontcolor = blue, labeldistance = 1.8]
: Defines the properties for edges in the graph (font family, font size, font color, and label distance).subgraph cluster_available_plans {... }
: Defines a subgraph named cluster_available_plans
and sets its label to 'ECommerce.Core'
.subgraph
statement is repeated with different labels for each subcluster: 'ECommerce.Entitlement'
and 'ECommerce.Identity'
.integrations
and myact
.Graph Structure
The graph has the following structure:
apply
cluster_available_plans
(label: ECommerce.Core
)
cluster_available_plans
(label: ECommerce.Entitlement
)
cluster_available_plans
(label: ECommerce.Identity
)
integrations
(shape: box, label: ECommerce.Integrations
)myact
(shape: box, label: ECommerce.MyAct
)