Orthogonal is a multi-purpose layouter for undirected graphs.
It produces clear representations of complex networks
and is especially fit for application areas such as
- Software Engineering
- Database Schema
- Systems management
- Knowledge Representation
The layouter is well suited for medium sized sparse graphs.
It produces compact drawings with no node overlaps, few crossings and
few bends. All edges will be routed in an orthogonal style, i.e.
only vertical and horizontal line segments will be used.
Options
Layout Style
- Normal
-
Node sizes will not be changed by this layouter.
The drawing will contain very few bends only.
- Normal + Tree
-
Same as normal but larger subtrees are layouted using a specialized
tree layouting algorithm, which is better suited for tree like structures than
the original orthogonal layout style.
- Uniform Nodesizes
-
Node sizes will all be changed to an equal size before being laid out.
- Node Boxes
-
Nodes are resized according to the number and position of their neighbors to reduce
the overall number of bends.
- Mixed
-
Ressembles Node Boxes but resizes all nodes to equal size by introducing
additional bends and routing the last line segment of these edges non-orthogonally
to their adjacent nodes.
Grid
Defines the virtual grid spacing used by the layouter.
Each node will be placed in such a way that its center point lies
on a grid point. Edges will be routed in such a way that its segements
lie on grid lines if the terminal nodes of the edges allow to place the
ports accordingly. Note that this option is only guaranteed to be obeyed for
Normal Layout Style while being used as a hint only for the other styles.
Length Reduction
If enabled the overall edge lengths will be reduced. The cost for the reduction
is an increased execution time of the layouter.
Use Existing Drawing as Sketch
If enabled the layouter will interpret the initial graph layout
as a sketch of the resulting orthogonal layout. The layouter
tries to "orthogonalize" the given sketch without making too much
modifications in respect to the original drawing.
Crossing Postprocessing
If enabled the overall number of edge crossings will be reduced.
The cost for the reduction is increased execution time of the layouter.
Use Randomization
If enabled the overall layout quality will increase with high probability.
The cost for this layout optimization is increased execution time
and non-deterministic behaviour of the layouter.
Labeling Tab
Options in this tab determine the edge labeling strategy used by this algorithm.
Edge Labeling
- None
-
Automatic edge labeling is deactivated.
- Integrated
-
Edge labels will be considered during the layout process. Nodes and edges
will be arranged in such a way that there is enough space for the edge labels
and nodes not to overlap.
- Generic
-
Edge labels will be automatically placed after the algorithm
has placed the nodes and edges. Edge labels may overlap with other
entities if there is not enough space to place the labels properly.
The resulting graph layout remains compact.
Edge Label Model
Determines which positions will be available for the edge labels.
- Best
-
The default. Chooses the model that fits the specified
edge labeling strategy best.
- As Is
-
Uses the individual label models that are currently set on the input graph.
Individual models for edge labels can be changed in the edge or edge label
property dialog.
- Center Slider
-
A label model allows labels to be placed somewhere on the corresponding edge path.
- Side Slider
-
A label model allows labels to be placed along both sides of the edge path.
This option is a good choice for Generic edge labeling.
- Free
-
A label model that allows labels to be placed anywhere. This model is a very good
choice for Integrated edge labeling. It is not compatible
with Generic edge labeling and therefore cannot be used
in that combination.
Grouping Tab
This tab can be used to configure the behavior of the layout algorithm if used
on nested/grouped graphs.
Group Layout Policy
Determines the basic policy for the layout process.
- Layout Groups
- Instructs the algorithm to layout groups and open folders as well as their
contents in a global manner. All visible nodes' positions will be recalculated.
- Fix Contents of Groups
-
The algorithm will keep the relative position of nodes inside of groups and
performs the layout on the top level only.
- Ignore Groups
-
This setting will make the algorithm ignore group nodes entirely. Nodes will be
rearranged as if there were no group nodes. This may lead to overlapping group
nodes finally.
Group Layout Quality
Sets the desired layout quality. Higher values result in less connection
crossings and smaller layout area, but also increased computation time.