Skip to content

Implement the frame='none' syntax for no frames#4404

Merged
seisman merged 15 commits intomainfrom
frame/none
Feb 24, 2026
Merged

Implement the frame='none' syntax for no frames#4404
seisman merged 15 commits intomainfrom
frame/none

Conversation

@seisman
Copy link
Copy Markdown
Member

@seisman seisman commented Feb 10, 2026

@seisman seisman added this to the 0.19.0 milestone Feb 10, 2026
@seisman seisman added the enhancement Improving an existing feature label Feb 10, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Feb 10, 2026

Summary of changed images

This is an auto-generated report of images that have changed on the DVC remote

Status Path
added pygmt/tests/baseline/test_basemap_frame_none.png

Image diff(s)

Details

Added images

  • test_basemap_frame_none.png

Modified images

Path Old New

Report last updated at commit f34f44c

@seisman seisman added the needs review This PR has higher priority and needs review. label Feb 10, 2026
@seisman seisman requested a review from Copilot February 10, 2026 07:09
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a Pythonic frame="none" option across PyGMT plotting APIs to request “no frame” behavior by translating it to GMT’s -B+n under the hood.

Changes:

  • Map frame="none" to the GMT -B+n syntax in the alias system (common -B handling).
  • Expand frame type annotations across affected plotting functions to include Literal["none"].
  • Add/extend tests, baseline image, and update docs/examples to demonstrate the new syntax.

Reviewed changes

Copilot reviewed 27 out of 27 changed files in this pull request and generated no comments.

Show a summary per file
File Description
pygmt/alias.py Implements the frame="none"+n mapping for common -B handling.
pygmt/helpers/decorators.py Updates common frame docstring snippet to document frame="none".
pygmt/src/basemap.py Updates frame type hint to accept "none".
pygmt/src/coast.py Updates frame type hint to accept "none".
pygmt/src/colorbar.py Updates frame type hint and documents frame="none" behavior.
pygmt/src/contour.py Updates frame type hint to accept "none".
pygmt/src/grdcontour.py Updates frame type hint to accept "none".
pygmt/src/grdimage.py Updates frame type hint to accept "none".
pygmt/src/grdview.py Updates frame type hint to accept "none".
pygmt/src/histogram.py Updates frame type hint to accept "none".
pygmt/src/image.py Updates frame type hint to accept "none".
pygmt/src/legend.py Updates frame type hint to accept "none".
pygmt/src/meca.py Updates frame type hint to accept "none".
pygmt/src/plot.py Updates frame type hint to accept "none".
pygmt/src/plot3d.py Updates frame type hint to accept "none".
pygmt/src/rose.py Updates frame type hint to accept "none".
pygmt/src/solar.py Updates frame type hint to accept "none".
pygmt/src/subplot.py Updates frame type hint to accept "none".
pygmt/src/ternary.py Updates frame type hint to accept "none".
pygmt/src/text.py Updates frame type hint to accept "none".
pygmt/src/tilemap.py Updates frame type hint to accept "none".
pygmt/src/velo.py Updates frame type hint to accept "none".
pygmt/src/wiggle.py Updates frame type hint to accept "none".
pygmt/tests/test_alias_system.py Adds coverage asserting frame="none" becomes -B+n via common-parameter aliasing.
pygmt/tests/test_basemap.py Adds an image-comparison test covering frame="none" in basemap and colorbar.
pygmt/tests/baseline/test_basemap_frame_none.png.dvc Adds the baseline artifact metadata for the new image test.
examples/gallery/maps/choropleth_map.py Updates an example to use frame="none" instead of raw "+n".

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@seisman seisman requested a review from a team February 20, 2026 07:46
@seisman
Copy link
Copy Markdown
Member Author

seisman commented Feb 20, 2026

@GenericMappingTools/pygmt-maintainers Please give this PR final reviews. Plan to merge it in three days.

@seisman seisman added final review call This PR requires final review and approval from a second reviewer and removed needs review This PR has higher priority and needs review. labels Feb 20, 2026
@seisman seisman removed the final review call This PR requires final review and approval from a second reviewer label Feb 24, 2026
@seisman seisman merged commit 903b8dc into main Feb 24, 2026
20 of 24 checks passed
@seisman seisman deleted the frame/none branch February 24, 2026 04:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Improving an existing feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Pythonic implemention of the frame="+n" setting

2 participants