Skip to content

feat: export subplot_interferometer_dataset + subplot_fit_interferometer_combined - #668

Merged
Jammy2211 merged 1 commit into
mainfrom
feature/plot-coverage-gaps
Jul 30, 2026
Merged

Jammy2211 merged 1 commit into
mainfrom
feature/plot-coverage-gaps

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Summary

autolens.plot was missing two interferometer plotting symbols that exist and are reachable everywhere else in the stack. This adds them as pure re-exports.

  • subplot_interferometer_dataset — autogalaxy.plot exports it from autoarray.dataset.plot.interferometer_plots, but autolens.plot imported only subplot_interferometer_dirty_images and fits_interferometer from that same module and skipped it. The interferometer dataset subplot was therefore unreachable from autolens.plot, which is why autolens_workspace/scripts/interferometer/plot.py has no dataset subplot while its autogalaxy counterpart does. That was never a workspace gap — the function simply could not be called.
  • subplot_fit_interferometer_combined — autolens's own function in autolens/interferometer/plot/fit_interferometer_plots.py, left unexported while the imaging equivalent subplot_fit_combined is exported.

This is the mirror of PyAutoGalaxy#538, which closed the same export asymmetry in the other direction during the plot-guides-restructure task.

Found by an audit of every public function in the source *_plots.py modules against every aplt.* call in both workspaces — the same audit that drives the workspace follow-up (see #667).

API Changes

Two symbols added to the autolens.plot (aplt) namespace. Both are re-exports of existing, unchanged functions — no signature, behaviour, or resolution change to anything already exported. Nothing removed or renamed.

See full details below.

Test Plan

  • Full PyAutoLens suite inside the task worktree: 488 passed, 0 failed (66.75s)
  • set(dir(autogalaxy.plot)) - set(dir(autolens.plot)) reduces from {subplot_fit_imaging_list, subplot_interferometer_dataset} to just {subplot_fit_imaging_list} (deliberate — AL uses subplot_fit_combined instead of AG's subplot_fit_imaging_list)
  • Both new names resolve to the expected modules, asserted against the worktree copy of autolens rather than the installed stack:
    • subplot_interferometer_dataset → autoarray.dataset.plot.interferometer_plots
    • subplot_fit_interferometer_combined → autolens.interferometer.plot.fit_interferometer_plots (autolens's own, not autogalaxy's)
  • aplt export count 61 → 63
  • git diff --stat = 2 files, 5 insertions, 1 deletion — no binary or output leakage
Full API Changes (for automation & release notes)

Added

  • autolens.plot.subplot_interferometer_dataset(dataset, output_path=, output_filename="dataset", output_format=, colormap=, use_log10=False, title_prefix=) — multi-panel subplot of an interferometer dataset. Re-export of autoarray.dataset.plot.interferometer_plots.subplot_interferometer_dataset, already exported by autogalaxy.plot.
  • autolens.plot.subplot_fit_interferometer_combined(fit_list, output_path=, output_format=, colormap=, title_prefix=) — combined subplot across a list of interferometer fits. Re-export of autolens.interferometer.plot.fit_interferometer_plots.subplot_fit_interferometer_combined.

Removed

None.

Renamed

None.

Changed Signature

None.

Changed Behaviour

None. In particular, the names subplot_fit_dirty_images and subplot_fit_real_space continue to resolve to the autogalaxy implementations inside autolens.plot, exactly as before this PR.

Migration

None required — additive only. Previously unreachable calls now work:

  • Before: aplt.subplot_interferometer_dataset(dataset=dataset) → AttributeError
  • After: renders the interferometer dataset subplot, matching autogalaxy.plot.
Deliberately out of scope

Not changed here: aplt.subplot_fit_dirty_images and aplt.subplot_fit_real_space resolve to the autogalaxy implementations inside autolens.plot, shadowing autolens's own versions in autolens/interferometer/plot/fit_interferometer_plots.py — which accept lensing-specific image_plane_lines / source_plane_lines arguments the autogalaxy versions do not. Rebinding an existing exported name is a behaviour change, not an additive export, so it belongs in its own prompt rather than riding along here.

Pre-existing docs/api/plot.rst omissions, not fixed in this PR: subplot_imaging_dataset, subplot_imaging_dataset_list, fits_imaging, fits_interferometer, subplot_fit_interferometer_tracer and subplot_interferometer_dirty_images are all exported but absent from the API docs. Separate audit.

Follow-up

The workspace leg of #667 lands after this merges: 7 plot.py files across autolens_workspace (imaging, interferometer, weak, cluster, point_source) and autogalaxy_workspace (imaging, interferometer). The AL interferometer dataset subplot depends on the first export here.

Closes nothing on its own — #667 stays open until the workspace leg ships.

Generated by the PyAutoLabs agent workflow.

…ter_combined

`autolens.plot` was missing two interferometer plotting symbols that are
reachable everywhere else in the stack:

- `subplot_interferometer_dataset` is exported by `autogalaxy.plot` from
  `autoarray.dataset.plot.interferometer_plots`, but `autolens.plot` imported
  only `subplot_interferometer_dirty_images` and `fits_interferometer` from
  that same module. The interferometer dataset subplot was therefore
  unreachable from `autolens.plot`, which is why the autolens_workspace
  interferometer example has no dataset subplot while its autogalaxy
  counterpart does.

- `subplot_fit_interferometer_combined` is autolens's own function in
  `autolens/interferometer/plot/fit_interferometer_plots.py`, left unexported
  while the imaging equivalent `subplot_fit_combined` is exported.

Both changes are purely additive. This is the mirror of PyAutoGalaxy#538,
which closed the same asymmetry in the other direction.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@Jammy2211

Copy link
Copy Markdown
Collaborator Author

Workspace legs of #667 are now open and depend on this PR:

All 7 touched workspace scripts were validated against this branch's build via a shared task worktree (7/7 ran to completion sequentially, with visualization on), so the new exports are exercised by real callers before merge.

@Jammy2211
Jammy2211 merged commit 45ac1db into main Jul 30, 2026
5 checks passed
@Jammy2211
Jammy2211 deleted the feature/plot-coverage-gaps branch July 30, 2026 15:22
@Jammy2211 Jammy2211 removed the pending-release PR queued for the next release build label Sep 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant