Coming soon! The Kael'Nyrin Scrolls: The Atlas Edict

yEd graph editor promotional banner with diagram screenshots

Captain Walker

Learning yEd: A Working Reference

charts, creating, efficiency, flowcharts, graphs, learning, maps, mindmaps, yEd

Estimated reading time at 200 wpm: 11 minutes

After many years of working with all sorts of flow charting and mapping software, I recently discovered yED quite by accident. If Draw.io is a Jaguar, then yED is a Rolls Royce and a Lambo all in one. Teslas are not in this race! 😊

Whether or not you agree our Fat Disclaimer applies

What’s in the ‘tin’? It’s best to say how it can work, and how I’ve been working yED. I might have some complex document with dates and times, or I might have a journal, or a dense legal judgement to fathom. Do I need to be spending umpteen hours reading it all? Years ago, the tools did not exist to allow for extraction of key content and link them up for coherence. So, one had no choice but to spend part of your life reading. But there is a problem with reading hundreds of pages in the traditional way. Ink and quill had to be used to make notes and then try and process what the document was saying.

Then came mindmaps and flowcharts like MindManager, and Draw.io. Those were great and still are. But using them for extraction of meaning is still a manual task. yED is still a thing that can require manually drawing nodes and connections etc. However there is smarter way. I’d throw a 1.3 Mb file or two into my bespoke AI interface, ask for some preliminary summaries, discuss the document(s) and then formulate a way for how the various parts connect.

That’s where yED comes in. yED uses .graphml which is a form of .xml file. AI models can read tons of text, extract important parts and arrange them into something valuable. The file produced is then read by yED and my human eyes. I can make adjustments and learn the information faster. Instead of 10 hours of reading a 325 paragraph judgement, I read for maybe 1 hour while interacting with AI extractions. Then I task AI to create the .graphml file from the judgement and other things discussed. The process is done by specific components drafted in my OpenWebUI on Docker setup using GLM 4.7 Flash, GLM 5.3 flash, or DeepSeek V4 Pro. AI will crunch away for a few minutes and produce the file. That is downloaded automatically. I then double click it to open in yED and make any adjustments.

The following is a sample output after reading on a topic. It’s a distillate from about 10,000 words of text. What I need is not to remember every word. I need core concepts and to know how things are connected. I can always check the text for greater detail when needed.

skill test v8 sample

Some manual work is needed to adjust the charts e.g. new nodes and connections. That means I need to know how yED works. If you never owned and drove a Rolls Royce before, you’d be foolish to just jump drive off without understanding the controls and how such a fine machine works. How? How about crashing it shortly after taking off.

So learning about yED was a whole new learning experience for me. I make notes. Or wait – I got my AIs to help make notes about the features I was tweaking and practicing. But other people can make their own choices to spend days doing the same by ink and quill, if they want to.

The following are my notes to self. If it helps someone else, then fine. If it’s useless to ‘everybody’, still fine by me!


1. Core elements

TermMeaning
NodeAny shape object: box, diamond, ellipse, actor. Graph theory calls it a vertex; yEd uses node
EdgeA line connecting two nodes
Directed edgeAn edge with an arrowhead; direction carries meaning
Undirected edgeA plain line; direction carries no meaning
LabelText attached to a node or an edge
Group nodeA container holding other nodes; groups can nest
Folder nodeA group in collapsed form, displayed as a single small node

2. Edge anatomy

TermMeaning
SourceWhere an edge starts
TargetWhere an edge ends; the arrowhead points here on directed edges
BendAn intermediate point where the edge changes direction; shown as a small draggable handle
Edge pathThe full sequence of points an edge follows, bends included
PortThe exact spot on a node’s border where an edge attaches
Self-loopAn edge from a node back to itself
Parallel edgesTwo or more edges between the same pair of nodes

3. Graph structure

Terms that appear in layout dialogs and manuals.

TermMeaning
Adjacent / neighbourNodes joined by an edge
DegreeThe number of edges touching a node; in-degree and out-degree count arrows in and out
PathA chain of edges from one node to another
CycleA path that returns to its starting node
DAGDirected acyclic graph: arrows flow one way, no loops. The structure Hierarchical layout expects
ComponentAn island: nodes linked to each other but to nothing else
SubgraphAny subset of nodes together with the edges between them
Root / leafTree terms: the node with no parents / nodes with no children
Parent / childImmediate superior and subordinate in a tree
Predecessor / successorThe same relationship in any directed graph
HubA node with very high degree
WeightA number attached to an edge, such as cost, strength or frequency

4. Routing styles

The four shapes an edge can take.

StyleAppearance
StraightOne direct segment at any angle
OrthogonalHorizontal and vertical segments only, right-angle turns
PolylineStraight segments at any angle, like a hand-drawn route
OrganicSmooth curves

5. Interface terms

TermMeaning
PaletteThe panel of ready-made shapes dragged onto the canvas
CanvasThe drawing area
OverviewThe minimap window
NavigatorA window showing the group hierarchy as a tree
Neighbourhood viewA popup showing a selected node’s edges and neighbours
GraphMLThe XML format yEd saves; the format AI tools generate
Snap to gridAligns nodes to an invisible grid while dragging

6. The Layout menu

Every layout algorithm answers one question: where should the nodes sit? The menu falls into three families. Two further menu rows move no nodes at all.

Structural layouts assume the graph already has a shape and arrange nodes to expose it.

OptionPrincipleTypical use
HierarchicalNodes stack in layers so edges flow consistently one wayProcesses, causal chains, timelines
TreeStrict parent-child descent from a single rootOrg charts, taxonomies, breakdowns
CircularConnected nodes placed on a ringFully interconnected groups
RadialOne hub in the centre, others on concentric ringsHub-and-spoke structures
Series ParallelRecognises sequences with parallel branchesFlowchart-shaped graphs
OrthogonalNodes aligned horizontally and verticallySchematic, technical drawings

Force layouts discover a shape rather than assume one.

OptionPrincipleTypical use
OrganicSimulates physics: nodes repel, edges pull like springs; clusters emergeNetworks with no inherent direction
ComponentsFinds disconnected islands and lays each out separately, packed side by sideMaps containing legitimate separate parts
RandomScatters all nodesA reset before re-running a layout that has settled badly

Domain notations implement specific diagram languages: Swimlane (columns for roles or phases), Flowchart (decision diamonds, start and end nodes), BPMN (business process notation), SBGN (biology pathways), Family Tree (generations and marriages), Tree Map (containment rectangles). Relevant only when a map follows one of those notations.

The two special rows

RowEffect
Edge RoutingRedraws lines; node positions stay fixed
Label Placement (Alt+Shift+L)Moves only labels, nudging them clear of lines and each other
Selection (Partial) (Alt+Shift+P)Applies the chosen layout to selected nodes only, leaving the rest fixed

Layouts rearrange; they never rewire. What is connected to what is unaffected by any entry in the Layout menu, which makes the whole menu safe to explore with undo (Ctrl+Z) as a safety net.


7. Edge routing in practice

The moved-node problem

Moving a node changes only the segments adjacent to it. Everything further along the edge keeps its old geometry, which is why edges look broken or deformed after a manual move. The remedy is selective rerouting: select the moved node and reroute only its edges. Do not repair bends by hand; the router regenerates them in seconds.

Orthogonal Channel router

Layout → Edge Routing → Orthogonal Channel. Redraws edges using vertical and horizontal segments while keeping all node positions fixed. Designed for exactly the interactive case where nodes have been moved and edges need redrawing.

SettingEffect
Path Finding AlgorithmHigh Quality uses a shortest-path algorithm: slower, better results. High Performance uses a pattern algorithm: faster, more node overlaps
ScopeAll Edges, Selected Edges, or Edges at Selected Nodes
Minimum DistanceClearance between parallel edge segments; the router reduces it selectively only where space runs out
Enable Grid RoutingConstrains paths to a grid; Grid Spacing sets the grid density
Bend CostCost per bend; raising it yields straighter paths
Edge Crossing CostsCost per crossing; raising it yields fewer crossings
Node Overlap CostsCost for paths overlapping nodes; raising it yields cleaner avoidance

Rerouted edges keep their style, arrowheads and labels; only geometry changes.

Organic routing

Layout → Edge Routing → Organic reroutes edges as smooth curves while keeping node positions fixed. The curved alternative when right angles do not suit the map.

Caveats

  • Orthogonal routing produces stair-shaped paths. For flowing curves, use Organic.
  • Routing minimises crossings but cannot eliminate them. Some crossings arise from the topology itself: when one node feeds several and several converge on one, crossings are unavoidable at certain node placements.
  • A full relayout (for example Hierarchical with generic labelling) resets the entire map when it has drifted too far. It changes where things sit, never what connects to what.

8. Labels

Node labels

For text-heavy boxes, the combination that works:

SettingValueEffect
ModelInternalLabel sits inside the node
PositionCenterCentred
SizeFit Node WidthText wraps at the node’s width; width is fixed by the user
ConfigurationCroppingThe node grows in height to fit the text; nothing is truncated
AlignmentCenterText alignment inside the label
Insetse.g. 20 20 20 20Padding between text and border, ordered top, left, bottom, right. Symmetric values avoid bottom-heavy boxes

Fit Node Width plus Cropping fixes the width and lets yEd handle the height. The opposite setting, Clipping, keeps the node fixed and cuts text off at the border; if text ever appears truncated, switch back to Cropping.

Edge labels flowing in the line

To make a label sit in the line so that the line stops at the text and resumes on the other side:

SettingValueEffect
ModelCenter SliderThe label travels along the edge
PositionDynamic (or drag the label)Where along the line it sits
Distance0.0The label sits exactly on the line instead of floating beside it
Auto-Rotate with EdgeTickedText flows horizontally on horizontal runs, vertically on vertical runs
Auto-FlipTick if neededPrevents upside-down text on vertical runs
BackgroundSolid colour (e.g. white)The opaque box masks the line behind the text, so the line appears to stop at the text edge and continue after it
Insetse.g. 3 3 3 3Pads the mask beyond the text so the line re-emerges with a clean gap
BorderTransparent, or light greyOptional outline; a border turns the label into a small visible box

The mask colour must match what is behind the label. White suits a white canvas; where an edge crosses a coloured group node the white patch will show against the tint, which is usually acceptable and can be replaced with a matching colour where it is not.

Avoid running Layout → Label Placement (generic labelling) after positioning slider labels. Generic labelling repositions labels according to its own scheme and overrides manual placements.

Bulk label editing

Labels are reached through their owners. Select nodes or edges, open Properties (F6), edit the Label tab, and the changes apply to every selected element.


9. Selection (yEd 3.25)

The Edit menu provides Select All (Ctrl+A) and Unselect All. There are no type-scoped commands such as select all edges, and no invert selection. The working selectors are:

GoalMethod
EverythingCtrl+A
A group of nodesDrag a rectangle on empty canvas; a dotted rectangle selects the nodes it encloses
Extend a selectionShift+drag a further rectangle, or Shift+click items to add or remove them
One edge or labelDirect click; zoom in (Ctrl+wheel) when lines are thin or crossing
A precise mixed setBuild with Shift+click, element by element
Select plus context menuRight-click
All elements sharing textFind (Ctrl+F)

Drag a rectangle from empty canvas; starting on a node moves the node instead. Draw generously, since a node at the rectangle’s edge may be missed. For large sweeps, zoom out first, drag, then zoom back.

Find searches node and edge labels, with scope options and Find Next (F3) to walk through matches. With regular expressions enabled, systematic label text (for example designates \(.*2025) gathers a whole class of edges at once. This is the closest equivalent to type-based selection: search for the shared text of the target labels, then restyle or reroute the result.

Clearing a selection is a click on empty canvas.


10. Working habits

  • Division of labour. Let the AI tool emit straight edges with no baked-in bends and no label coordinates. Routing and label placement are what yEd does best, and every bend written into the GraphML is one more thing yEd preserves instead of repairs. The tool decides what connects to what; yEd decides how it looks.
  • Undo-safe experimentation. Ctrl+Z makes the entire Layout menu reversible. Try a layout, undo, try another.
  • Repair pattern after moving nodes. Select the moved node, run Edge Routing → Orthogonal Channel or Organic with scope Edges at Selected Nodes. Node placement stays, lines are redrawn.
  • Bulk editing. Multi-select (drag a rectangle, or Find for label-matched sets), then edit properties once for all.
  • Label hygiene. Short edge labels, applied only where an edge carries meaning worth stating. Most label collisions are prevented at authoring time, not fixed at layout time.
  • Reset when drift accumulates. A full relayout with the appropriate algorithm and generic labelling resets the whole map in one pass.