Apply Radial Tree Layout (Network Diagram)

Summary

Arranges diagram features hierarchically and places them in a radial tree.

Learn more about the Radial Tree layout algorithm

Caution:

If you have an open edit session, you must save your edits prior to running this tool. This ensures that the diagram reflects the latest changes made to the network topology in the database. If you fail to save your edits, the edits will not be reflected in the diagram.

Note:

Each layout algorithm includes default parameter values. The default parameter values will be used unless otherwise specified. If the input network diagram is based on a template for which this layout has been configured with a different parameter value, that value is used instead.

Usage

  • This tool is not supported when working with a database connection to a utility network or trace network in an enterprise geodatabase. You must use either the related published utility network or trace network service, or a utility network or trace network in a file geodatabase.

  • The input network diagram layer must be from either a utility network or a trace network in a file geodatabase or a network diagram service.

  • This layout algorithm arranges the diagram features hierarchically and places them in a radial tree according to the specified radius parameters. It works from a root junction that it uses as the circle center to arrange the subtrees starting from this root in concentric circles, each circle corresponding to one hierarchical level.

  • If no root junction is specified, the algorithm identifies the diagram junction associated with the smallest network topology index and uses this junction as the root junction.

    If a diagram junction is specified as a root junction, the radial tree uses this root junction as the center of the concentric circles.

    When several root junctions are specified in the diagram, those root junctions are placed around a first concentric circle with a fictitious center.

  • Consider applying the layout in asynchronous mode on the server when working on very large diagrams.

Syntax

arcpy.nd.ApplyRadialTreeLayout(in_network_diagram_layer, {are_containers_preserved}, {is_unit_absolute}, {initial_radius_absolute}, {initial_radius_proportional}, {disjoined_graph_absolute}, {disjoined_graph_proportional}, {radius_factor}, {run_async})
ParameterExplanationData Type
in_network_diagram_layer

The network diagram to which the layout will be applied.

Diagram Layer
are_containers_preserved
(Optional)

Specifies how the algorithm will process containers.

  • PRESERVE_CONTAINERS The layout algorithm will execute on the top graph of the diagram so containers are preserved.
  • IGNORE_CONTAINERSThe layout algorithm will execute on both content and noncontent features in the diagram. This is the default.
Boolean
is_unit_absolute
(Optional)

Specifies how parameters representing distances will be interpreted.

  • ABSOLUTE_UNITThe layout algorithm will interpret any distance values as linear units.
  • PROPORTIONAL_UNITThe layout algorithm will interpret any distance values as relative units to an estimation of the average of the junction sizes in the current diagram extent. This is the default.
Boolean
initial_radius_absolute
(Optional)

The radius of the first concentric circle whose center is the radial tree root junction—that is, the radius of the circle around which the diagram junctions belonging to the first hierarchical level are placed. The default is 5 in the units of the diagram's coordinate system. This parameter can only be used with absolute units.

Linear Unit
initial_radius_proportional
(Optional)

The radius of the first concentric circle whose center is the radial tree root junction—that is, the radius of the circle around which the diagram junctions belonging to the first hierarchical level are placed. The default is 5. This parameter can only be used with proportional units.

Double
disjoined_graph_absolute
(Optional)

The minimum spacing that will separate features belonging to disjoined graphs when the diagram contains such graphs. This parameter is used with absolute units. The default is 4 in the units of the diagram's coordinate system.

Linear Unit
disjoined_graph_proportional
(Optional)

The minimum spacing that will separate features belonging to disjoined graphs when the diagram contains such graphs. This parameter is used with proportional units. The default is 4.

Double
radius_factor
(Optional)

The multiplicative factor used to increase or decrease the radius of each concentric circle. It is also the distance that separates each concentric circle related to a hierarchical level. When using a radius factor less than 1, the distance that separates the diagram junctions belonging to the (n) hierarchical level and the (n+1) hierarchical level progressively decreases. With a factor greater than 1, the distance between the hierarchical levels increases progressively. The default is 1.

Double
run_async
(Optional)

Specifies whether the layout algorithm will run asynchronously or synchronously on the server.

  • RUN_ASYNCHRONOUSLYThe layout algorithm will run asynchronously on the server. This option dedicates server resources to run the layout algorithm with a longer time-out. Running asynchronously is recommended when executing layouts that are time consuming and may exceed the server time-out—for example, Partial Overlapping Edges—and applying to large diagrams—more than 25,000 features.
  • RUN_SYNCHRONOUSLYThe layout algorithm will run synchronously on the server. It can fail without completion if its execution exceeds the service time-out: 600 seconds by default. This is the default.
Boolean

Derived Output

NameExplanationData Type
out_network_diagram_layer

The updated network diagram layer.

Diagram Layer

Code sample

ApplyRadialTreeLayout example (Python window)

This sample script applies the Radial Tree Layout algorithm to the diagram called Temporary Diagram.

import arcpy
arcpy.ApplyRadialTreeLayout_nd("Temporary diagram", "PRESERVE_CONTAINERS", 
                               "ABSOLUTE_UNIT", 5, "", 15, "", 1, 
                               "RUN_SYNCHRONOUSLY")

Environments

This tool does not use any geoprocessing environments.

Licensing information

  • Basic: No
  • Standard: Yes
  • Advanced: Yes

Related topics