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
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.
- 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 laid out using a specialized tree layout algorithm which is better suited for tree like structures than the original orthogonal layout style.
- Uniform Node sizes
- 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.
- Resembles 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.
- Mixed (Size Fixed)
- Like Mixed but maintains original node sizes.
- Node Boxes (Size Fixed)
- Like Node Boxes but maintains original node sizes.
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 their segments lie on grid lines if the terminal nodes of the edges permit suitable port placements. 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.
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.
If enabled, the overall number of edge crossings will be reduced. The cost for the reduction is increased execution time of the layouter.
Minimize Perceived Bends
If enabled, helical arrangement of chains of nodes are avoided.
If enabled, the overall layout quality will increase with high probability. The cost for this layout optimization is increased execution time and non-deterministic behavior of the layouter.
Use Face Maximization
If enabled, the layouter tries to maximize one face of the embedding.
Options in this tab determine the edge labeling strategy used by this algorithm.
- Automatic edge labeling is deactivated.
- 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.
- 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.
- 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 that allows labels to be placed somewhere on the corresponding edge path.
- Side Slider
- A label model that allows labels to be placed along both sides of the edge path. This option is a good choice for Generic edge labeling.
- 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.
Consider Node Labels
Determines whether node labels should be considered in the layout process.
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.
Group Layout Quality
Sets the desired layout quality. Higher values result in less connection crossings and smaller layout area, but also increased computation time.