LayoutSettings
LayoutSettings
class LayoutSettingsImmutable native graph layout overrides. None leaves an option to the renderer; it does not force a default override. Constructors and read-only properties expose options to help() and completion.
Examples
from symbolica.community.graph import LayoutSettings
settings = LayoutSettings(impred_steps=100, impred_labels=True)Attributes
| Name | Description |
|---|---|
impred_attraction |
Nonnegative attraction multiplier; the native default is 2.5. |
impred_contract_chord_ratio |
Positive contraction threshold below the subdivision threshold; default 1.25. |
impred_edge_clearance |
Positive edge clearance in drawing units; the native default is 0.4. |
impred_external_max_points |
Maximum intermediate external-route points, from 0 to 3; default 2. |
impred_labels |
Refine the layout around measured labels; disabled by default. |
impred_level |
Rotate toward the external-pull optimum; enabled by default. |
impred_node_edge_strength |
Nonnegative node-edge repulsion multiplier; the native default is 4. |
impred_parallel_balance |
Parallel-edge attraction balance; the native default is 1. |
impred_pull |
External-leg pull multiplier; the native default is 0.45. |
impred_pull_balance |
Balance of external-leg pulls; the native default is 1. |
impred_repulsion |
Nonnegative repulsion multiplier; the native default is 2.5. |
impred_spacing |
Target spacing in drawing units; the native default is 2.4. |
impred_split_length_ratio |
Subdivision threshold relative to spacing; the native default is 1.5. |
impred_step_scale |
Maximum integration stride after settling; the native default is 2. |
impred_steps |
Cooling schedule duration in reference steps; the native default is 500. |
layout_algo |
Layout algorithm: “impred” preserves the embedding; “dot” uses layered ranks. |
tree_dx |
Horizontal spacing for layered layouts, in drawing units. |
tree_dy |
Vertical spacing for layered layouts, in drawing units. |
impred_attraction
LayoutSettings.impred_attraction: typing.Optional[builtins.float]Nonnegative attraction multiplier; the native default is 2.5.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_attractionimpred_contract_chord_ratio
LayoutSettings.impred_contract_chord_ratio: typing.Optional[builtins.float]Positive contraction threshold below the subdivision threshold; default 1.25.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_contract_chord_ratioimpred_edge_clearance
LayoutSettings.impred_edge_clearance: typing.Optional[builtins.float]Positive edge clearance in drawing units; the native default is 0.4.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_edge_clearanceimpred_external_max_points
LayoutSettings.impred_external_max_points: typing.Optional[builtins.int]Maximum intermediate external-route points, from 0 to 3; default 2.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_external_max_pointsimpred_labels
LayoutSettings.impred_labels: typing.Optional[builtins.bool]Refine the layout around measured labels; disabled by default.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_labelsimpred_level
LayoutSettings.impred_level: typing.Optional[builtins.bool]Rotate toward the external-pull optimum; enabled by default.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_levelimpred_node_edge_strength
LayoutSettings.impred_node_edge_strength: typing.Optional[builtins.float]Nonnegative node-edge repulsion multiplier; the native default is 4.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_node_edge_strengthimpred_parallel_balance
LayoutSettings.impred_parallel_balance: typing.Optional[builtins.float]Parallel-edge attraction balance; the native default is 1.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_parallel_balanceimpred_pull
LayoutSettings.impred_pull: typing.Optional[builtins.float]External-leg pull multiplier; the native default is 0.45.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_pullimpred_pull_balance
LayoutSettings.impred_pull_balance: typing.Optional[builtins.float]Balance of external-leg pulls; the native default is 1.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_pull_balanceimpred_repulsion
LayoutSettings.impred_repulsion: typing.Optional[builtins.float]Nonnegative repulsion multiplier; the native default is 2.5.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_repulsionimpred_spacing
LayoutSettings.impred_spacing: typing.Optional[builtins.float]Target spacing in drawing units; the native default is 2.4.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_spacingimpred_split_length_ratio
LayoutSettings.impred_split_length_ratio: typing.Optional[builtins.float]Subdivision threshold relative to spacing; the native default is 1.5.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_split_length_ratioimpred_step_scale
LayoutSettings.impred_step_scale: typing.Optional[builtins.int]Maximum integration stride after settling; the native default is 2.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_step_scaleimpred_steps
LayoutSettings.impred_steps: typing.Optional[builtins.int]Cooling schedule duration in reference steps; the native default is 500.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().impred_stepslayout_algo
LayoutSettings.layout_algo: typing.Optional[builtins.str]Layout algorithm: “impred” preserves the embedding; “dot” uses layered ranks.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().layout_algotree_dx
LayoutSettings.tree_dx: typing.Optional[builtins.float]Horizontal spacing for layered layouts, in drawing units.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().tree_dxtree_dy
LayoutSettings.tree_dy: typing.Optional[builtins.float]Vertical spacing for layered layouts, in drawing units.
Examples
from symbolica.community.graph import LayoutSettings
value = LayoutSettings().tree_dyMethods
| Name | Description |
|---|---|
__new__ |
Construct immutable overrides; None preserves the renderer’s defaults. |
__repr__ |
Inspect the selected overrides without rendering a diagram. |
__new__
LayoutSettings.__new__(
*,
layout_algo: typing.Literal['dot', 'impred'] | None = None,
tree_dx: typing.Optional[builtins.float] = None,
tree_dy: typing.Optional[builtins.float] = None,
impred_steps: typing.Optional[builtins.int] = None,
impred_step_scale: typing.Optional[builtins.int] = None,
impred_spacing: typing.Optional[builtins.float] = None,
impred_repulsion: typing.Optional[builtins.float] = None,
impred_attraction: typing.Optional[builtins.float] = None,
impred_parallel_balance: typing.Optional[builtins.float] = None,
impred_pull: typing.Optional[builtins.float] = None,
impred_pull_balance: typing.Optional[builtins.float] = None,
impred_external_max_points: typing.Optional[builtins.int] = None,
impred_split_length_ratio: typing.Optional[builtins.float] = None,
impred_contract_chord_ratio: typing.Optional[builtins.float] = None,
impred_edge_clearance: typing.Optional[builtins.float] = None,
impred_node_edge_strength: typing.Optional[builtins.float] = None,
impred_labels: typing.Optional[builtins.bool] = None,
impred_level: typing.Optional[builtins.bool] = None,
) -> LayoutSettingsConstruct immutable overrides; None preserves the renderer’s defaults.
Examples
from symbolica.community.graph import LayoutSettings
settings = LayoutSettings(impred_steps=100, impred_labels=True)Parameters
layout_algo(str or None, optional) Layout algorithm: “impred” preserves the embedding; “dot” uses layered ranks.tree_dx(float or None, optional) Horizontal spacing for layered layouts, in drawing units.tree_dy(float or None, optional) Vertical spacing for layered layouts, in drawing units.impred_steps(int or None, optional) Cooling schedule duration in reference steps; the native default is 500.impred_step_scale(int or None, optional) Maximum integration stride after settling; the native default is 2.impred_spacing(float or None, optional) Target spacing in drawing units; the native default is 2.4.impred_repulsion(float or None, optional) Nonnegative repulsion multiplier; the native default is 2.5.impred_attraction(float or None, optional) Nonnegative attraction multiplier; the native default is 2.5.impred_parallel_balance(float or None, optional) Parallel-edge attraction balance; the native default is 1.impred_pull(float or None, optional) External-leg pull multiplier; the native default is 0.45.impred_pull_balance(float or None, optional) Balance of external-leg pulls; the native default is 1.impred_external_max_points(int or None, optional) Maximum intermediate external-route points, from 0 to 3; default 2.impred_split_length_ratio(float or None, optional) Subdivision threshold relative to spacing; the native default is 1.5.impred_contract_chord_ratio(float or None, optional) Positive contraction threshold below the subdivision threshold; default 1.25.impred_edge_clearance(float or None, optional) Positive edge clearance in drawing units; the native default is 0.4.impred_node_edge_strength(float or None, optional) Nonnegative node-edge repulsion multiplier; the native default is 4.impred_labels(bool or None, optional) Refine the layout around measured labels; disabled by default.impred_level(bool or None, optional) Rotate toward the external-pull optimum; enabled by default.
__repr__
LayoutSettings.__repr__() -> builtins.strInspect the selected overrides without rendering a diagram.
Examples
from symbolica.community.graph import LayoutSettings
text = repr(LayoutSettings(impred_steps=100, impred_labels=True))