Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add logarithmic and power projections #742

Merged
merged 21 commits into from
Dec 23, 2020
Merged
Show file tree
Hide file tree
Changes from 16 commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
1e3a5a6
Change name of cartesian.py to cartesian_linear.py and relab title
willschlitzer Dec 17, 2020
f02384b
Add cartesian_logarithmic.py
willschlitzer Dec 17, 2020
57f34b8
Change depiction of optional parameters in docstring
willschlitzer Dec 17, 2020
bd9b1e8
Add cartesian_power.py
willschlitzer Dec 17, 2020
2d9a201
Merge branch 'master' into log-power-proj
willschlitzer Dec 18, 2020
212785a
Update docstring format on cartesian_power.py
willschlitzer Dec 19, 2020
852224c
Format doctstring
willschlitzer Dec 19, 2020
38c0a7c
Remove code formatting in doctsring of cartesian_power.py
willschlitzer Dec 19, 2020
157ff48
Format docstring in cartesian_power.py
willschlitzer Dec 19, 2020
3fa6f27
Update cartesian_power.py and cartesian_logarithmic.py to use map wid…
willschlitzer Dec 20, 2020
d3a4f38
Merge branch 'master' into log-power-proj
willschlitzer Dec 20, 2020
51c521b
Merge branch 'master' into log-power-proj
willschlitzer Dec 20, 2020
6c3679b
Merge branch 'master' into log-power-proj
willschlitzer Dec 22, 2020
bf912e7
Merge branch 'master' into log-power-proj
willschlitzer Dec 22, 2020
e72a2cd
Merge branch 'master' into log-power-proj
willschlitzer Dec 22, 2020
55baf7f
Update examples/projections/nongeo/cartesian_power.py
willschlitzer Dec 23, 2020
325f881
Update examples/projections/nongeo/cartesian_logarithmic.py
willschlitzer Dec 23, 2020
9f24bfb
Update examples/projections/nongeo/cartesian_power.py
willschlitzer Dec 23, 2020
1c72c6b
Merge branch 'master' into log-power-proj
willschlitzer Dec 23, 2020
80780ea
[format-command] fixes
actions-bot Dec 23, 2020
384462e
Apply suggestions from code review
seisman Dec 23, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
@@ -1,6 +1,6 @@
"""
Cartesian
=========
Cartesian linear
================

``Xwidth/[height]``: Give the ``width`` of the figure and the optional argument ``height``.
"""
Expand Down
37 changes: 37 additions & 0 deletions examples/projections/nongeo/cartesian_logarithmic.py
@@ -0,0 +1,37 @@
"""
Cartesian logarithmic
=====================

``xwidth[l]/[height[l]]``: Give the ``width`` of the figure and the optional argument \
``height``. The axis or axes with a logarithmic transformation requires ``l`` after
its size argument.
"""
import pygmt
import numpy as np

# Create a list of x values 0-100
xline = np.arange(0, 101)
# Create a list of y-values that are the square root of the x-values
yline = xline ** 0.5
# Create a list of x values for every 10 in 0-100
xpoints = np.arange(0, 101, 10)
# Create a list of y-values that are the square root of the x-values
ypoints = xpoints ** 0.5

fig = pygmt.Figure()
fig.plot(
region=[1, 100, 0, 10],
# Set a logarithmic transformation on the x-axis
projection="X15cl/10c",
# Set the figures frame, color, and gridlines
frame=["WSne+gbisque", "x2g3", "ya2f1g2"],
x=xline,
y=yline,
# Set the line thickness to *1p*, the color to *blue*, and the style to *dash*
pen="1p,blue,-",
)
# Plot square root values as points on the line
# Style of points is 0.3 cm square, color is *red* with a *black* outline
# Points are set to clip if they go off the figure
seisman marked this conversation as resolved.
Show resolved Hide resolved
fig.plot(x=xpoints, y=ypoints, style="s0.3c", color="red", no_clip="c", pen="black")
seisman marked this conversation as resolved.
Show resolved Hide resolved
willschlitzer marked this conversation as resolved.
Show resolved Hide resolved
fig.show()
34 changes: 34 additions & 0 deletions examples/projections/nongeo/cartesian_power.py
@@ -0,0 +1,34 @@
"""
Cartesian power
===============

**X**\ *width*\ [**p**\ *pvalue*]/[*height*\ [**p**\ *pvalue*]]: Give the
*width* of the figure and the optional argument *height*. The axis or axes with a
logarithmic transformation requires **p** and the power transformation for that axis.
"""
import pygmt
import numpy as np

# Create a list of y values 0-10
yvalues = np.arange(0, 11)
# Create a list of x-values that are the square of the y-values
xvalues = yvalues ** 2

fig = pygmt.Figure()
fig.plot(
region=[0, 100, 0, 10],
# Set the power transformation of the x-axis, with a power of 0.5
projection="X15cp0.5/10c",
# Set the figures frame, color, and gridlines
frame=["WSne+givory", "xa1p", "ya2f1"],
# Set the line thickness to *thick*
# Use the default color *black* and the default style *solid*
pen="thick",
x=xvalues,
y=yvalues,
)
# Plot x,y values as points on the line
# Style of points is 0.2 cm circles, color is *green* with a *black* outline
# Points are set to clip if they go off the figure
seisman marked this conversation as resolved.
Show resolved Hide resolved
fig.plot(x=xvalues, y=yvalues, style="c0.2c", color="green", no_clip="c", pen="black")
seisman marked this conversation as resolved.
Show resolved Hide resolved
willschlitzer marked this conversation as resolved.
Show resolved Hide resolved
fig.show()