block by veltman 6204863ae290904fbae83ca5490d4b1b

Automatic label placement along path

Full Screen

A method for automatically finding the best eligible label position and size for a label that’s going to go along a path inside of an area. This is potentially suitable for area charts where the area being labeled has a clear direction the text should “flow” in.

The basic approach is a crude one: test a center point at a certain font size, and work outwards to the left and right and disqualify it if you ever hit the side of the chart or run out of vertical space. If it fits, try a bigger size. If not, try a smaller size. Rinse/repeat until you’ve either found the largest size that will fit at that position or found that nothing will fit. Repeat with each possible center point until you’ve found the largest font size you can use, and where to put it.

Notes:

See also: Automatic label placement along a path #2
Streamgraph label positions #2
Stacked area label placement #2

index.html