Skip to content
Merged
Changes from 5 commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
d5394f2
Add basic code and documentation
yvonnefroehlich Nov 19, 2023
3808564
[format-command] fixes
actions-bot Nov 19, 2023
38540cb
Remove 'box'
yvonnefroehlich Nov 19, 2023
bbf06d2
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Nov 20, 2023
8b8bad7
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Nov 20, 2023
0851337
Expand documentation
Nov 21, 2023
1bec367
Update example for 'box'
yvonnefroehlich Nov 23, 2023
0804898
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Nov 30, 2023
6d14f88
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Dec 1, 2023
617b715
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Dec 5, 2023
5c169a7
Fix typos
yvonnefroehlich Dec 7, 2023
0875174
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Dec 8, 2023
7a5c127
Use alias 'box' for 'F'
Dec 8, 2023
dcd8941
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Dec 14, 2023
54e7ed3
Improve docs
yvonnefroehlich Dec 16, 2023
aa9fa95
Add blank line at end of file
yvonnefroehlich Dec 16, 2023
19468ea
Add comments
yvonnefroehlich Dec 17, 2023
9b8281c
Replace tabs by white spaces
yvonnefroehlich Dec 17, 2023
ec322e4
Fix rst syntax
yvonnefroehlich Dec 17, 2023
019732f
Fix rst syntax
yvonnefroehlich Dec 17, 2023
0981d57
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Dec 17, 2023
ad63900
Improve comments, fix typos
yvonnefroehlich Dec 17, 2023
9af9b1e
Better include origin of length scale
yvonnefroehlich Dec 17, 2023
047d01d
Fix typo
Dec 18, 2023
55bbaf4
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Dec 18, 2023
b7fc7da
Fix typo
Dec 18, 2023
7222642
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Dec 18, 2023
909678c
Improve code and docs
Dec 18, 2023
64c811a
Remove blank line
Dec 18, 2023
e6fc3a0
Improve code and docs reagarding +c
yvonnefroehlich Dec 18, 2023
94c9ac4
Shorten docs
yvonnefroehlich Dec 18, 2023
14a7cfd
Fix typos
yvonnefroehlich Dec 18, 2023
4430223
Fix typos
yvonnefroehlich Dec 18, 2023
93bcff0
Fix typos
yvonnefroehlich Dec 18, 2023
beaa1a6
Extend docs for position
yvonnefroehlich Dec 19, 2023
937fe2e
Add docs for distance unit
yvonnefroehlich Dec 19, 2023
6023891
Use 'or' consistently
yvonnefroehlich Dec 19, 2023
8f29791
Fix typo
yvonnefroehlich Dec 19, 2023
fcf3164
Replace "|" by "or"
yvonnefroehlich Dec 19, 2023
0cfdf75
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Dec 19, 2023
88baf28
Fix line length
yvonnefroehlich Dec 19, 2023
b08b6be
Improv
yvonnefroehlich Dec 19, 2023
d8065ed
Fix line length and add article
yvonnefroehlich Dec 19, 2023
fd504d0
Fix typo
yvonnefroehlich Dec 20, 2023
cf0d1a6
Improve argument passed to 'xshift'
yvonnefroehlich Dec 22, 2023
1335750
Improve argument passed to 'xshift'
yvonnefroehlich Dec 22, 2023
5e519ad
Improve formulation
yvonnefroehlich Dec 22, 2023
311cca7
Combine subplots into one plot
yvonnefroehlich Dec 24, 2023
40fd4f8
Adjust thumbnail image
yvonnefroehlich Dec 24, 2023
c8f27c1
Use consistently a width of 500 kilometers
yvonnefroehlich Dec 24, 2023
60dea40
Reduce thickness of scale bar
yvonnefroehlich Dec 24, 2023
9f73a45
Merge branch 'main' into add-gallery-scalebar
yvonnefroehlich Dec 24, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
97 changes: 97 additions & 0 deletions examples/gallery/embellishments/scalebar.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
r"""
Scale bar
=========

The ``map_scale`` parameter of the :meth:`pygmt.Figure.basemap` and
:meth:`pygmt.Figure.coast` methods is used to add a scale bar to a map.
This example shows how such a scale bar can be customized:

- position: **j**. Set the reference point by specifying a two-letter (order
independent) code, chosen from vertically **T**\(op), **M**\(iddle), or
**B**\(ottom) and horizontally **L**\(eft), **C**\(entre), or **R**\(ight).
- justify: **+j**. Set the anchor point by specifying a two-letter (order
independent) code, chosen from vertically **T**\(op), **M**\(iddle), or
**B**\(ottom) and horizontally **L**\(eft), **C**\(entre), or **R**\(ight).
- offset: **+o**\ *xoffset*/*yoffset*. Shift from ``position`` in x
(longitude) and y (latitude) directions.
- length: **+w**\ *length*. Give value and unit.
- height: :gmt-term:`MAP_SCALE_HEIGHT`
- origin on map: **+c**\ [*slon*/]\ *slat*. *slon* is only optional for
projections with constant scale along parallels.
- fancy style: **+f**. Get a scale bar that looks like train tracks.
- label: **+l**. Use another label as the unit given via **+w**.
- label alignment: **+a**. Append **t**\(op) [Default], **b**\(ottom),
**l**\(eft), or **r**\(ight).
- distance unit: **+u**. Add the distance unit to the distance values.

Via the ``box`` parameter a box can be added around the scale bar.
"""


# %%
import pygmt

# Create a new Figure instance
fig = pygmt.Figure()

fig.basemap(
region=[-45, -25, -15, 0],
projection="M10c", # Mercator projection with 10 centimeters width
frame=["WSne", "af"],
map_scale="jMC+w1000k",
)

fig.shift_origin(xshift="+w1c")

fig.basemap(
region=[-45, -25, -15, 0],
projection="M10c",
frame=["wSnE", "af"],
map_scale="jML+jBL+o1c/1c+w1000k+f+u",
)

fig.show()

# %%
# Amazing text

# Create a new Figure instance
fig = pygmt.Figure()

with pygmt.config(MAP_SCALE_HEIGHT="20p"):
fig.basemap(
region=[-45, -25, -15, 0],
projection="M10c",
frame=["WSne", "af"],
map_scale="jBL+o1c/1c+w1000k+f+lkm",
)

fig.shift_origin(xshift="+w1c")

fig.basemap(
region=[-45, -25, -15, 0],
projection="M10c",
frame=["wSnE", "af"],
map_scale="jBL+o1c/1c+c-35/-5+w1000k+f+lscale at 35° W and 5° S+ukm",
)

fig.show()

# %%
# Amazing text

# Create a new Figure instance
fig = pygmt.Figure()

fig.coast(
region=[-45, -25, -15, 0],
projection="M10c",
land="tan",
water="lightblue",
shorelines="1/0.5p,gray30",
frame=["WSne+gtan", "af"],
map_scale="jBL+o1c/1c+w1000k+f+lkm+ar",
F="+gwhite@30+p0.5p,gray30+r3p",
)

fig.show()