5
5
from pygmt import Figure , grdcut , which
6
6
from pygmt .exceptions import GMTInvalidInput
7
7
from pygmt .helpers import GMTTempFile , data_kind
8
- from pygmt .helpers .testing import check_figures_equal
9
8
10
9
11
10
@pytest .fixture (scope = "module" , name = "region" )
@@ -34,15 +33,14 @@ def fixture_xrgrid(region):
34
33
return grdcut (grid = "@earth_relief_01d_g" , region = region )
35
34
36
35
37
- @check_figures_equal ()
38
- def test_grdview_grid_dataarray (gridfile , xrgrid ):
36
+ @pytest . mark . mpl_image_compare
37
+ def test_grdview_grid_dataarray (xrgrid ):
39
38
"""
40
39
Run grdview by passing in a grid as an xarray.DataArray.
41
40
"""
42
- fig_ref , fig_test = Figure (), Figure ()
43
- fig_ref .grdview (grid = gridfile )
44
- fig_test .grdview (grid = xrgrid )
45
- return fig_ref , fig_test
41
+ fig = Figure ()
42
+ fig .grdview (grid = xrgrid )
43
+ return fig
46
44
47
45
48
46
@pytest .mark .mpl_image_compare
@@ -69,184 +67,167 @@ def test_grdview_wrong_kind_of_grid(xrgrid):
69
67
fig .grdview (grid = dataset )
70
68
71
69
72
- @check_figures_equal ()
73
- def test_grdview_with_perspective (gridfile , xrgrid ):
70
+ @pytest . mark . mpl_image_compare
71
+ def test_grdview_with_perspective (gridfile ):
74
72
"""
75
73
Run grdview by passing in a grid and setting a perspective viewpoint with
76
74
an azimuth from the SouthEast and an elevation angle 15 degrees from the
77
75
z-plane.
78
76
"""
79
- fig_ref , fig_test = Figure (), Figure ()
80
- fig_ref .grdview (grid = gridfile , perspective = [135 , 15 ])
81
- fig_test .grdview (grid = xrgrid , perspective = [135 , 15 ])
82
- return fig_ref , fig_test
77
+ fig = Figure ()
78
+ fig .grdview (grid = gridfile , perspective = [135 , 15 ])
79
+ return fig
83
80
84
81
85
- @check_figures_equal ()
86
- def test_grdview_with_perspective_and_zscale (gridfile , xrgrid ):
82
+ @pytest . mark . mpl_image_compare
83
+ def test_grdview_with_perspective_and_zscale (xrgrid ):
87
84
"""
88
85
Run grdview by passing in a grid and setting a perspective viewpoint with
89
86
an azimuth from the SouthWest and an elevation angle 30 degrees from the
90
87
z-plane, plus a z-axis scaling factor of 0.005.
91
88
"""
92
- fig_ref , fig_test = Figure (), Figure ()
93
- kwargs = dict (perspective = [225 , 30 ], zscale = 0.005 )
94
- fig_ref .grdview (grid = gridfile , ** kwargs )
95
- fig_test .grdview (grid = xrgrid , ** kwargs )
96
- return fig_ref , fig_test
89
+ fig = Figure ()
90
+ fig .grdview (grid = xrgrid , perspective = [225 , 30 ], zscale = 0.005 )
91
+ return fig
97
92
98
93
99
- @check_figures_equal ()
100
- def test_grdview_with_perspective_and_zsize (gridfile , xrgrid ):
94
+ @pytest . mark . mpl_image_compare
95
+ def test_grdview_with_perspective_and_zsize (xrgrid ):
101
96
"""
102
97
Run grdview by passing in a grid and setting a perspective viewpoint with
103
98
an azimuth from the SouthWest and an elevation angle 30 degrees from the
104
99
z-plane, plus a z-axis size of 10cm.
105
100
"""
106
- fig_ref , fig_test = Figure (), Figure ()
107
- kwargs = dict (perspective = [225 , 30 ], zsize = "10c" )
108
- fig_ref .grdview (grid = gridfile , ** kwargs )
109
- fig_test .grdview (grid = xrgrid , ** kwargs )
110
- return fig_ref , fig_test
101
+ fig = Figure ()
102
+ fig .grdview (grid = xrgrid , perspective = [225 , 30 ], zsize = "10c" )
103
+ return fig
111
104
112
105
113
- @check_figures_equal ()
114
- def test_grdview_with_cmap_for_image_plot (gridfile , xrgrid ):
106
+ @pytest . mark . mpl_image_compare
107
+ def test_grdview_with_cmap_for_image_plot (xrgrid ):
115
108
"""
116
109
Run grdview by passing in a grid and setting a colormap for producing an
117
110
image plot.
118
111
"""
119
- fig_ref , fig_test = Figure (), Figure ()
120
- kwargs = dict (cmap = "oleron" , surftype = "i" )
121
- fig_ref .grdview (grid = gridfile , ** kwargs )
122
- fig_test .grdview (grid = xrgrid , ** kwargs )
123
- return fig_ref , fig_test
112
+ fig = Figure ()
113
+ fig .grdview (grid = xrgrid , cmap = "oleron" , surftype = "i" )
114
+ return fig
124
115
125
116
126
- @check_figures_equal ()
127
- def test_grdview_with_cmap_for_surface_monochrome_plot (gridfile , xrgrid ):
117
+ @pytest . mark . mpl_image_compare
118
+ def test_grdview_with_cmap_for_surface_monochrome_plot (xrgrid ):
128
119
"""
129
120
Run grdview by passing in a grid and setting a colormap for producing a
130
121
surface monochrome plot.
131
122
"""
132
- fig_ref , fig_test = Figure (), Figure ()
133
- kwargs = dict (cmap = "oleron" , surftype = "s+m" )
134
- fig_ref .grdview (grid = gridfile , ** kwargs )
135
- fig_test .grdview (grid = xrgrid , ** kwargs )
136
- return fig_ref , fig_test
123
+ fig = Figure ()
124
+ fig .grdview (grid = xrgrid , cmap = "oleron" , surftype = "s+m" )
125
+ return fig
137
126
138
127
139
- @check_figures_equal ()
140
- def test_grdview_with_cmap_for_perspective_surface_plot (gridfile , xrgrid ):
128
+ @pytest . mark . mpl_image_compare
129
+ def test_grdview_with_cmap_for_perspective_surface_plot (xrgrid ):
141
130
"""
142
131
Run grdview by passing in a grid and setting a colormap for producing a
143
132
surface plot with a 3D perspective viewpoint.
144
133
"""
145
- fig_ref , fig_test = Figure (), Figure ()
146
- kwargs = dict ( cmap = "oleron" , surftype = "s" , perspective = [ 225 , 30 ], zscale = 0.005 )
147
- fig_ref . grdview ( grid = gridfile , ** kwargs )
148
- fig_test . grdview ( grid = xrgrid , ** kwargs )
149
- return fig_ref , fig_test
134
+ fig = Figure ()
135
+ fig . grdview (
136
+ grid = xrgrid , cmap = "oleron" , surftype = "s" , perspective = [ 225 , 30 ], zscale = 0.005
137
+ )
138
+ return fig
150
139
151
140
152
- @check_figures_equal ()
153
- def test_grdview_on_a_plane (gridfile , xrgrid ):
141
+ @pytest . mark . mpl_image_compare
142
+ def test_grdview_on_a_plane (xrgrid ):
154
143
"""
155
144
Run grdview by passing in a grid and plotting it on a z-plane, while
156
145
setting a 3D perspective viewpoint.
157
146
"""
158
- fig_ref , fig_test = Figure (), Figure ()
159
- kwargs = dict (plane = - 4000 , perspective = [225 , 30 ], zscale = 0.005 )
160
- fig_ref .grdview (grid = gridfile , ** kwargs )
161
- fig_test .grdview (grid = xrgrid , ** kwargs )
162
- return fig_ref , fig_test
147
+ fig = Figure ()
148
+ fig .grdview (grid = xrgrid , plane = - 4000 , perspective = [225 , 30 ], zscale = 0.005 )
149
+ return fig
163
150
164
151
165
- @check_figures_equal ()
166
- def test_grdview_on_a_plane_with_colored_frontal_facade (gridfile , xrgrid ):
152
+ @pytest . mark . mpl_image_compare
153
+ def test_grdview_on_a_plane_with_colored_frontal_facade (xrgrid ):
167
154
"""
168
155
Run grdview by passing in a grid and plotting it on a z-plane whose frontal
169
156
facade is colored gray, while setting a 3D perspective viewpoint.
170
157
"""
171
- fig_ref , fig_test = Figure (), Figure ()
172
- kwargs = dict (plane = "-4000+ggray" , perspective = [225 , 30 ], zscale = 0.005 )
173
- fig_ref .grdview (grid = gridfile , ** kwargs )
174
- fig_test .grdview (grid = xrgrid , ** kwargs )
175
- return fig_ref , fig_test
158
+ fig = Figure ()
159
+ fig .grdview (grid = xrgrid , plane = "-4000+ggray" , perspective = [225 , 30 ], zscale = 0.005 )
160
+ return fig
176
161
177
162
178
- @check_figures_equal ()
179
- def test_grdview_with_perspective_and_zaxis_frame (gridfile , xrgrid , region ):
163
+ @pytest . mark . mpl_image_compare
164
+ def test_grdview_with_perspective_and_zaxis_frame (xrgrid , region ):
180
165
"""
181
166
Run grdview by passing in a grid and plotting an annotated vertical z-axis
182
167
frame on a Transverse Mercator (T) projection.
183
168
"""
184
- fig_ref , fig_test = Figure (), Figure ()
169
+ fig = Figure ()
185
170
projection = f"T{ (region [0 ]+ region [1 ])/ 2 } /{ abs ((region [2 ]+ region [3 ])/ 2 )} "
186
- kwargs = dict (
171
+ fig .grdview (
172
+ grid = xrgrid ,
187
173
projection = projection ,
188
174
perspective = [225 , 30 ],
189
175
zscale = 0.005 ,
190
176
frame = ["xaf" , "yaf" , "zaf" ],
191
177
)
192
- fig_ref .grdview (grid = gridfile , ** kwargs )
193
- fig_test .grdview (grid = xrgrid , ** kwargs )
194
- return fig_ref , fig_test
178
+ return fig
195
179
196
180
197
- @check_figures_equal ()
198
- def test_grdview_surface_plot_styled_with_contourpen (gridfile , xrgrid ):
181
+ @pytest . mark . mpl_image_compare
182
+ def test_grdview_surface_plot_styled_with_contourpen (xrgrid ):
199
183
"""
200
184
Run grdview by passing in a grid with styled contour lines plotted on top
201
185
of a surface plot.
202
186
"""
203
- fig_ref , fig_test = Figure (), Figure ()
204
- kwargs = dict (cmap = "relief" , surftype = "s" , contourpen = "0.5p,black,dash" )
205
- fig_ref .grdview (grid = gridfile , ** kwargs )
206
- fig_test .grdview (grid = xrgrid , ** kwargs )
207
- return fig_ref , fig_test
187
+ fig = Figure ()
188
+ fig .grdview (grid = xrgrid , cmap = "relief" , surftype = "s" , contourpen = "0.5p,black,dash" )
189
+ return fig
208
190
209
191
210
- @check_figures_equal ()
211
- def test_grdview_surface_mesh_plot_styled_with_meshpen (gridfile , xrgrid ):
192
+ @pytest . mark . mpl_image_compare
193
+ def test_grdview_surface_mesh_plot_styled_with_meshpen (xrgrid ):
212
194
"""
213
195
Run grdview by passing in a grid with styled mesh lines plotted on top of a
214
196
surface mesh plot.
215
197
"""
216
- fig_ref , fig_test = Figure (), Figure ()
217
- kwargs = dict (cmap = "relief" , surftype = "sm" , meshpen = "0.5p,black,dash" )
218
- fig_ref .grdview (grid = gridfile , ** kwargs )
219
- fig_test .grdview (grid = xrgrid , ** kwargs )
220
- return fig_ref , fig_test
198
+ fig = Figure ()
199
+ fig .grdview (grid = xrgrid , cmap = "relief" , surftype = "sm" , meshpen = "0.5p,black,dash" )
200
+ return fig
221
201
222
202
223
- @check_figures_equal ()
224
- def test_grdview_on_a_plane_styled_with_facadepen (gridfile , xrgrid ):
203
+ @pytest . mark . mpl_image_compare
204
+ def test_grdview_on_a_plane_styled_with_facadepen (xrgrid ):
225
205
"""
226
206
Run grdview by passing in a grid and plotting it on a z-plane with styled
227
207
lines for the frontal facade.
228
208
"""
229
- fig_ref , fig_test = Figure (), Figure ()
230
- kwargs = dict (
231
- plane = - 4000 , perspective = [225 , 30 ], zscale = 0.005 , facadepen = "0.5p,blue,dash"
209
+ fig = Figure ()
210
+ fig .grdview (
211
+ grid = xrgrid ,
212
+ plane = - 4000 ,
213
+ perspective = [225 , 30 ],
214
+ zscale = 0.005 ,
215
+ facadepen = "0.5p,blue,dash" ,
232
216
)
233
- fig_ref .grdview (grid = gridfile , ** kwargs )
234
- fig_test .grdview (grid = xrgrid , ** kwargs )
235
- return fig_ref , fig_test
217
+ return fig
236
218
237
219
238
- @check_figures_equal ()
239
- def test_grdview_drapegrid_dataarray (gridfile , xrgrid ):
220
+ @pytest . mark . mpl_image_compare
221
+ def test_grdview_drapegrid_dataarray (xrgrid ):
240
222
"""
241
223
Run grdview by passing in both a grid and drapegrid as an xarray.DataArray,
242
224
setting a colormap for producing an image plot.
243
225
"""
244
226
drapegrid = 1.1 * xrgrid
245
227
246
- fig_ref , fig_test = Figure (), Figure ()
247
- fig_ref .grdview (grid = gridfile , drapegrid = drapegrid , cmap = "oleron" , surftype = "c" )
248
- fig_test .grdview (grid = xrgrid , drapegrid = drapegrid , cmap = "oleron" , surftype = "c" )
249
- return fig_ref , fig_test
228
+ fig = Figure ()
229
+ fig .grdview (grid = xrgrid , drapegrid = drapegrid , cmap = "oleron" , surftype = "c" )
230
+ return fig
250
231
251
232
252
233
def test_grdview_wrong_kind_of_drapegrid (xrgrid ):
0 commit comments