annotate_legend — ANNOTATE paper op

• Data kinds: image2d → image2d

• Call: import fullseye as fs; fs.ledger.annotate_legend(img, labels, xy, anchor='lt', start=1, radius=7.0, color='emphasis', text_color=None, font_size=12, pad=8, row_gap=4, box_color=None, box_alpha=0.72, border=1, border_color='neutral', scheme='okabe_ito', font_path=None, min_font_size=9, numbers=None) (to call the implementation directly, import annotate; annotate.annotate_legend(img, labels, xy, anchor='lt', start=1, radius=7.0, color='emphasis', text_color=None, font_size=12, pad=8, row_gap=4, box_color=None, box_alpha=0.72, border=1, border_color='neutral', scheme='okabe_ito', font_path=None, min_font_size=9, numbers=None); from the registry, opsannotate.get("annotate_legend"))

Usage

Returns an image (image2d): a legend of numbered round markers against their descriptions (the partner of annotate_markers).

The box height is the closed form 2*pad + n*row_h + (n-1)*row_gap (row_h = max(2r, text height)).

Parameters

labels : sequence of str

Description of each row.

numbers : sequence of str or None

Marker text of each row. If None, consecutive numbers from start.

Raises

ValueError

labels empty, box sticks out of the image, negative margin.

Detailed usage guide

• figure_annotation family guide

Background guides (the physics and conventions behind this op)

• dataset_conventions — Training-dataset conventions — COCO / YOLO / VOC and pitfalls in visual inspection

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• paper_figure — py -3.11 examples/paper_figure.py

• poc_real_defect_floor — py -3.11 examples/poc_real_defect_floor.py

Ops the type connects to (they accept image2d as input)

text_box · arrow · leader_line · label_points · crosshair · legend_box · color_bar · scale_bar

Same category (paper)

annotate_leader_layout · annotate_leader · annotate_markers · annotate_dimension_layout · annotate_dimension · annotate_angle_layout · annotate_angle · annotate_scale_bar_layout


*Provenance: annotate.py — ANNOTATE operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.