axes_transform — ANNOTATE plot op

• Data kinds: none → axes (an op determined by its arguments alone — it takes no image or data input)

• Call: import fullseye as fs; fs.ledger.axes_transform(rect, xlim, ylim, invert_y=True, xscale='linear', yscale='linear') (to call the implementation directly, import annotate; annotate.axes_transform(rect, xlim, ylim, invert_y=True, xscale='linear', yscale='linear'); from the registry, opsannotate.get("axes_transform"))

Usage

Build the (closed-form) mapping from data coordinates to pixel coordinates.

> The detailed description below is the original text — the summary and the headings are translated.

`row は下向き という画像の事実と、y は上向き` というグラフの慣習の

ずれを、この 1 か所だけで吸収する。図のコードはこの辞書を持ち回る。

px = x0 + (x - xmin)/(xmax - xmin) * (w - 1)

py = y0 + (h - 1) - (y - ymin)/(ymax - ymin) * (h - 1) # invert_y

Parameters

----------

rect : (x, y, w, h)

描画域(左上基準、画素)。

xlim, ylim : (lo, hi)

データ範囲。lo == hi は傾きが無限大になるので ValueError。

lo > hi(反転軸)も許す ―― 深度やランクを上下逆に描くため。

invert_y : bool

True(既定)なら `ylim[0]` が下端に来る = 普通のグラフ。

False なら画像そのままの向き(上端が `ylim[0]`)。

xscale, yscale : {'linear','log'}

`'log'` は常用対数。範囲に 0 以下が入れば ValueError

(log 軸に 0 を渡して -inf を「端」として描く図は嘘になる)。

Returns

-------

dict

`{"rect", "xlim", "ylim", "invert_y", "xscale", "yscale"}`。

Raises

------

ValueError

矩形が不正、範囲が非有限か幅ゼロ、w か h が 2 未満、

未知の scale、log 軸で範囲に 0 以下。

Detailed usage guide

• figure_annotation family guide

Background guides (the physics and conventions behind this op)

• dataset_conventions — 学習データセット規約の知識 — COCO / YOLO / VOC と外観検査での落とし穴

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)

• annotate_gallery — py -3.11 examples/annotate_gallery.py

• annotate_paper_tour — py -3.11 examples/annotate_paper_tour.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_camera_shake_deblur — py -3.11 examples/poc_camera_shake_deblur.py

• poc_crack_width_timeseries — py -3.11 examples/poc_crack_width_timeseries.py

• poc_dehazing — py -3.11 examples/poc_dehazing.py

• poc_dic_strain — py -3.11 examples/poc_dic_strain.py

• poc_driving_decisions — py -3.11 examples/poc_driving_decisions.py

• poc_driving_traffic — py -3.11 examples/poc_driving_traffic.py

• poc_focus_stacking — py -3.11 examples/poc_focus_stacking.py

• poc_interferometry_step — py -3.11 examples/poc_interferometry_step.py

• poc_measurement_system_analysis — py -3.11 examples/poc_measurement_system_analysis.py

• poc_motion_magnification — py -3.11 examples/poc_motion_magnification.py

• poc_panorama_drift — py -3.11 examples/poc_panorama_drift.py

• poc_particle_tracking — py -3.11 examples/poc_particle_tracking.py

• poc_photoelasticity — py -3.11 examples/poc_photoelasticity.py

• poc_registration_basin — py -3.11 examples/poc_registration_basin.py

• poc_river_surface_velocity — py -3.11 examples/poc_river_surface_velocity.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_template_tracking — py -3.11 examples/poc_template_tracking.py

• poc_timelapse_growth — py -3.11 examples/poc_timelapse_growth.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

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

data_to_pixel · axes_frame · grid_lines · ticks · plot_series

Same category (plot)

data_to_pixel · nice_ticks · axes_frame · grid_lines · ticks · plot_series


*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.