plot op• Datenarten: axes × signal × signal → pairs
• Aufruf: import fullseye as fs; fs.ledger.data_to_pixel(axes, x, y) (die Implementierung direkt: import annotate; annotate.data_to_pixel(axes, x, y); aus dem Register: opsannotate.get("data_to_pixel"))
• Rückgabewert über das Register: fullseye.ledger.data_to_pixel(...) liefert nur den Wert des deklarierten Out-Typs pairs (die zugrunde liegende Funktion gibt zusätzlich Hilfsinformationen zurück). Wird das Verworfene gebraucht, nutze fullseye.ledger.data_to_pixel.raw(...) oder rufe annotate.data_to_pixel direkt auf.
Bildet Datenpunkte über eine axes_transform-Abbildung auf Pixel (x, y) ab.
Clippt nicht -- np.clip(v, lo, hi) gibt bei lo > hi (umgekehrte Achse) stillschweigend hi zurück, und es entsteht "eine plausible Lügenabbildung", in der alle Punkte am Rand kleben (der Generator in diesem repo ist tatsächlich einmal darauf hereingefallen). Werte außerhalb des Bereichs abzuweisen, ist Aufgabe von clip=True in plot_series; dort ist es eine Exception.
(ndarray, ndarray)
px, py (float, nicht gerundet -- Runden ist Aufgabe der Zeichenseite).
ValueError
wenn auf einer log-Achse ein Wert bis 0 oder darunter übergeben wird (eine Abbildung, die -inf als "Rand" zeichnet, ist eine Lüge).
wenn x und y verschieden lang sind (siehe unten).
Das Abweisen von Längenunterschieden wurde am 2026-09-02 ergänzt. Kurz nachdem der Ketten-Fuzzer diesen op ausführen konnte, stürzte der Miner auf einem Pfad, der 2 signals unterschiedlicher Länge übergab, mit einem rohen ValueError aus np.stack ab, wodurch es aufflog. Bis dahin wurden selbst bei 7 Punkten in x und 3 Punkten in y keine Exception ausgelöst und die 2 unterschiedlich langen Arrays unverändert zurückgegeben.
Gefährlich ist nicht der Absturz, sondern dass es nicht abstürzt -- zip man die 2 zurückgegebenen Arrays, werden nur 3 Punkte gezeichnet, an den Positionen der ersten 3 x-Werte. Dass Punkte verschwunden sind und dass x verschoben ist, sieht man der Abbildung nicht an. Das Geschwister plot_series wies dieselbe Situation mit "x and y must have the same length" ab, daher war die Disziplin innerhalb derselben Familie gespalten (es ist ein Fehlertyp, der wiederkehrt, wenn man nur eine Seite repariert, daher wurde auch der Wortlaut angeglichen).
• Leitfaden zur Familie figure_annotation
• dataset_conventions — Konventionen für Trainingsdatensätze — COCO / YOLO / VOC und Fallstricke in der Sichtprüfung
• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).
• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.
• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.
• annotate_gallery — py -3.11 examples/annotate_gallery.py
• poc_beam_modal_video — py -3.11 examples/poc_beam_modal_video.py
• poc_camera_calibration — py -3.11 examples/poc_camera_calibration.py
• poc_crack_width_timeseries — py -3.11 examples/poc_crack_width_timeseries.py
• poc_motion_magnification — py -3.11 examples/poc_motion_magnification.py
• poc_strain_history — py -3.11 examples/poc_strain_history.py
• poc_structure_4d_deterioration — py -3.11 examples/poc_structure_4d_deterioration.py
• poc_superresolution_limits — py -3.11 examples/poc_superresolution_limits.py
• poc_traffic_counting — py -3.11 examples/poc_traffic_counting.py
• poc_wound_area_tracking — py -3.11 examples/poc_wound_area_tracking.py
• poc_xyt_event_surface — py -3.11 examples/poc_xyt_event_surface.py
pairs als Eingabe)label_points · annotate_invert_path · filled_polygon
plot)axes_transform · nice_ticks · axes_frame · grid_lines · ticks · plot_series
*Provenance: annotate.py — ANNOTATE Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.