88import numpy as np
99import pandas as pd
1010from pygmt ._typing import PathLike , TableLike
11- from pygmt .alias import AliasSystem
11+ from pygmt .alias import Alias , AliasSystem
1212from pygmt .clib import Session
1313from pygmt .helpers import (
1414 build_arg_list ,
@@ -73,7 +73,6 @@ def _blockm(
7373
7474@fmt_docstring
7575@use_alias (
76- I = "spacing" ,
7776 S = "summary" ,
7877 a = "aspatial" ,
7978 b = "binary" ,
@@ -84,14 +83,15 @@ def _blockm(
8483 o = "outcols" ,
8584 w = "wrap" ,
8685)
87- @kwargs_to_strings (I = "sequence" , o = "sequence_comma" )
88- def blockmean (
86+ @kwargs_to_strings (o = "sequence_comma" )
87+ def blockmean ( # noqa: PLR0913
8988 data : PathLike | TableLike | None = None ,
9089 x = None ,
9190 y = None ,
9291 z = None ,
9392 output_type : Literal ["pandas" , "numpy" , "file" ] = "pandas" ,
9493 outfile : PathLike | None = None ,
94+ spacing : Sequence [float | str ] | None = None ,
9595 region : Sequence [float | str ] | str | None = None ,
9696 registration : Literal ["gridline" , "pixel" ] | bool = False ,
9797 verbose : Literal ["quiet" , "error" , "warning" , "timing" , "info" , "compat" , "debug" ]
@@ -114,6 +114,7 @@ def blockmean(
114114 Full GMT docs at :gmt-docs:`blockmean.html`.
115115
116116 {aliases}
117+ - I = spacing
117118 - R = region
118119 - V = verbose
119120 - i = incols
@@ -169,7 +170,9 @@ def blockmean(
169170 >>> # Calculate block mean values within 5 by 5 arc-minute bins
170171 >>> data_bmean = pygmt.blockmean(data=data, region=[245, 255, 20, 30], spacing="5m")
171172 """
172- aliasdict = AliasSystem ().add_common (
173+ aliasdict = AliasSystem (
174+ I = Alias (spacing , name = "spacing" , sep = "/" , size = 2 ),
175+ ).add_common (
173176 R = region ,
174177 V = verbose ,
175178 i = incols ,
@@ -191,7 +194,6 @@ def blockmean(
191194
192195@fmt_docstring
193196@use_alias (
194- I = "spacing" ,
195197 a = "aspatial" ,
196198 b = "binary" ,
197199 d = "nodata" ,
@@ -201,14 +203,15 @@ def blockmean(
201203 o = "outcols" ,
202204 w = "wrap" ,
203205)
204- @kwargs_to_strings (I = "sequence" , o = "sequence_comma" )
205- def blockmedian (
206+ @kwargs_to_strings (o = "sequence_comma" )
207+ def blockmedian ( # noqa: PLR0913
206208 data : PathLike | TableLike | None = None ,
207209 x = None ,
208210 y = None ,
209211 z = None ,
210212 output_type : Literal ["pandas" , "numpy" , "file" ] = "pandas" ,
211213 outfile : PathLike | None = None ,
214+ spacing : Sequence [float | str ] | None = None ,
212215 region : Sequence [float | str ] | str | None = None ,
213216 registration : Literal ["gridline" , "pixel" ] | bool = False ,
214217 verbose : Literal ["quiet" , "error" , "warning" , "timing" , "info" , "compat" , "debug" ]
@@ -231,6 +234,7 @@ def blockmedian(
231234 Full GMT docs at :gmt-docs:`blockmedian.html`.
232235
233236 {aliases}
237+ - I = spacing
234238 - R = region
235239 - V = verbose
236240 - i = incols
@@ -280,7 +284,9 @@ def blockmedian(
280284 ... data=data, region=[245, 255, 20, 30], spacing="5m"
281285 ... )
282286 """
283- aliasdict = AliasSystem ().add_common (
287+ aliasdict = AliasSystem (
288+ I = Alias (spacing , name = "spacing" , sep = "/" , size = 2 ),
289+ ).add_common (
284290 R = region ,
285291 V = verbose ,
286292 i = incols ,
@@ -302,7 +308,6 @@ def blockmedian(
302308
303309@fmt_docstring
304310@use_alias (
305- I = "spacing" ,
306311 a = "aspatial" ,
307312 b = "binary" ,
308313 d = "nodata" ,
@@ -312,14 +317,15 @@ def blockmedian(
312317 o = "outcols" ,
313318 w = "wrap" ,
314319)
315- @kwargs_to_strings (I = "sequence" , o = "sequence_comma" )
316- def blockmode (
320+ @kwargs_to_strings (o = "sequence_comma" )
321+ def blockmode ( # noqa: PLR0913
317322 data : PathLike | TableLike | None = None ,
318323 x = None ,
319324 y = None ,
320325 z = None ,
321326 output_type : Literal ["pandas" , "numpy" , "file" ] = "pandas" ,
322327 outfile : PathLike | None = None ,
328+ spacing : Sequence [float | str ] | None = None ,
323329 region : Sequence [float | str ] | str | None = None ,
324330 registration : Literal ["gridline" , "pixel" ] | bool = False ,
325331 verbose : Literal ["quiet" , "error" , "warning" , "timing" , "info" , "compat" , "debug" ]
@@ -342,6 +348,7 @@ def blockmode(
342348 Full GMT docs at :gmt-docs:`blockmode.html`.
343349
344350 {aliases}
351+ - I = spacing
345352 - R = region
346353 - V = verbose
347354 - i = incols
@@ -389,7 +396,9 @@ def blockmode(
389396 >>> # Calculate block mode values within 5 by 5 arc-minute bins
390397 >>> data_bmode = pygmt.blockmode(data=data, region=[245, 255, 20, 30], spacing="5m")
391398 """
392- aliasdict = AliasSystem ().add_common (
399+ aliasdict = AliasSystem (
400+ I = Alias (spacing , name = "spacing" , sep = "/" , size = 2 ),
401+ ).add_common (
393402 R = region ,
394403 V = verbose ,
395404 i = incols ,
0 commit comments