niwrap-afni 0.5.0__py3-none-any.whl → 0.5.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of niwrap-afni might be problematic. Click here for more details.
- niwrap_afni/afni/abids_json_tool_py.py +104 -1
- niwrap_afni/afni/abids_tool.py +43 -1
- niwrap_afni/afni/adjunct_make_script_and_rst_py.py +2 -2
- niwrap_afni/afni/afni_batch_r.py +1 -2
- niwrap_afni/afni/balloon.py +25 -1
- niwrap_afni/afni/brain_skin.py +16 -1
- niwrap_afni/afni/build_afni_py.py +28 -1
- niwrap_afni/afni/cat_matvec.py +23 -1
- niwrap_afni/afni/convert_surface.py +38 -1
- niwrap_afni/afni/dicom_hinfo.py +9 -2
- niwrap_afni/afni/dsetstat2p.py +19 -1
- niwrap_afni/afni/fat_proc_align_anat_pair.py +10 -1
- niwrap_afni/afni/fat_proc_convert_dcm_anat.py +16 -1
- niwrap_afni/afni/fat_roi_row.py +1 -4
- niwrap_afni/afni/fsread_annot.py +2 -2
- niwrap_afni/afni/imrotate.py +10 -1
- niwrap_afni/afni/myget.py +16 -3
- niwrap_afni/afni/nifti_tool.py +3 -2
- niwrap_afni/afni/p2dsetstat.py +19 -1
- niwrap_afni/afni/plugout_drive.py +93 -1
- niwrap_afni/afni/prompt_popup.py +46 -1
- niwrap_afni/afni/prompt_user.py +16 -1
- niwrap_afni/afni/rbox.py +170 -9
- niwrap_afni/afni/samp_bias.py +16 -1
- niwrap_afni/afni/sfim.py +9 -2
- niwrap_afni/afni/stimband.py +22 -3
- niwrap_afni/afni/surf_dist.py +47 -1
- niwrap_afni/afni/surf_fwhm.py +1 -5
- niwrap_afni/afni/surf_info.py +99 -2
- niwrap_afni/afni/surface_metrics.py +179 -172
- niwrap_afni/afni/tedana_wrapper_py.py +19 -1
- niwrap_afni/afni/v_1d_bport.py +12 -1
- niwrap_afni/afni/v_1d_correlate.py +39 -1
- niwrap_afni/afni/v_1d_marry.py +1 -2
- niwrap_afni/afni/v_1d_rplot.py +233 -4
- niwrap_afni/afni/v_1d_sem.py +157 -2
- niwrap_afni/afni/v_1d_tsort.py +10 -1
- niwrap_afni/afni/v_1ddot.py +5 -4
- niwrap_afni/afni/v_1deval.py +16 -1
- niwrap_afni/afni/v_1dgen_arma11.py +16 -1
- niwrap_afni/afni/v_3_droimaker.py +16 -1
- niwrap_afni/afni/v_3d_afnito3_d.py +34 -4
- niwrap_afni/afni/v_3d_afnito_niml.py +34 -2
- niwrap_afni/afni/v_3d_amp_to_rsfc.py +10 -9
- niwrap_afni/afni/v_3d_anova3.py +323 -20
- niwrap_afni/afni/v_3d_clip_level.py +38 -2
- niwrap_afni/afni/v_3d_clust_sim.py +275 -22
- niwrap_afni/afni/v_3d_cm.py +103 -2
- niwrap_afni/afni/v_3d_dtto_dwi.py +58 -4
- niwrap_afni/afni/v_3d_dwito_dt.py +299 -2
- niwrap_afni/afni/v_3d_ecm.py +24 -2
- niwrap_afni/afni/v_3d_fdr.py +14 -1
- niwrap_afni/afni/v_3d_gen_feature_dist.py +53 -1
- niwrap_afni/afni/v_3d_hist.py +14 -1
- niwrap_afni/afni/v_3d_icc.py +137 -2
- niwrap_afni/afni/v_3d_lfcd.py +24 -5
- niwrap_afni/afni/v_3d_lme.py +1 -3
- niwrap_afni/afni/v_3d_local_histog.py +32 -1
- niwrap_afni/afni/v_3d_lrflip.py +46 -1
- niwrap_afni/afni/v_3d_lss.py +107 -4
- niwrap_afni/afni/v_3d_mask_to_ascii.py +12 -4
- niwrap_afni/afni/v_3d_mema.py +301 -3
- niwrap_afni/afni/v_3d_mepfm.py +1 -2
- niwrap_afni/afni/v_3d_nlfim.py +487 -30
- niwrap_afni/afni/v_3d_nwarp_xyz.py +27 -14
- niwrap_afni/afni/v_3d_overlap.py +20 -6
- niwrap_afni/afni/v_3d_par2_afni.py +32 -1
- niwrap_afni/afni/v_3d_pfm.py +200 -2
- niwrap_afni/afni/v_3d_remlfit.py +41 -1
- niwrap_afni/afni/v_3d_roistats.py +1 -2
- niwrap_afni/afni/v_3d_rsfc.py +240 -6
- niwrap_afni/afni/v_3d_stat_clust.py +19 -1
- niwrap_afni/afni/v_3d_tcat.py +24 -5
- niwrap_afni/afni/v_3d_threeto_rgb.py +1 -2
- niwrap_afni/afni/v_3d_toy_prog.py +111 -1
- niwrap_afni/afni/v_3d_tsgen.py +18 -1
- niwrap_afni/afni/v_3d_tsort.py +10 -1
- niwrap_afni/afni/v_3d_tstat.py +25 -15
- niwrap_afni/afni/v_3d_undump.py +10 -1
- niwrap_afni/afni/v_3d_warp.py +236 -2
- niwrap_afni/afni/v_3d_wilcoxon.py +9 -7
- niwrap_afni/afni/v_3dbucket.py +14 -1
- niwrap_afni/afni/v_3dcalc.py +1 -1
- niwrap_afni/afni/v_3dcopy.py +31 -3
- niwrap_afni/afni/v_3dmask_svd.py +99 -2
- niwrap_afni/afni/v__4_daverage.py +11 -2
- niwrap_afni/afni/v__afni_env.py +19 -1
- niwrap_afni/afni/v__afni_refacer_run.py +36 -1
- niwrap_afni/afni/v__build_afni_xlib.py +21 -1
- niwrap_afni/afni/v__chauffeur_afni.py +184 -2
- niwrap_afni/afni/v__command_globb.py +13 -7
- niwrap_afni/afni/v__compute_oc_weights.py +16 -1
- niwrap_afni/afni/v__deblank_file_names.py +13 -2
- niwrap_afni/afni/v__dice_metric.py +18 -14
- niwrap_afni/afni/v__djunct_edgy_align_check.py +82 -10
- niwrap_afni/afni/v__djunct_montage_coordinator.py +10 -1
- niwrap_afni/afni/v__get_afni_res.py +3 -2
- niwrap_afni/afni/v__grad_flip_test.py +38 -42
- niwrap_afni/afni/v__grayplot.py +34 -1
- niwrap_afni/afni/v__help_afni.py +63 -2
- niwrap_afni/afni/v__make_label_table.py +14 -1
- niwrap_afni/afni/v__no_ext.py +9 -2
- niwrap_afni/afni/v__reorder.py +10 -1
- niwrap_afni/afni/v__skull_strip_touch_up.py +10 -1
- niwrap_afni/afni/v__suma_make_spec_caret.py +62 -2
- niwrap_afni/afni/v__suma_make_spec_fs.py +180 -2
- niwrap_afni/afni/v__to_mni_qwarpar.py +21 -1
- niwrap_afni/afni/v__to_rai.py +23 -7
- {niwrap_afni-0.5.0.dist-info → niwrap_afni-0.5.2.dist-info}/METADATA +1 -1
- {niwrap_afni-0.5.0.dist-info → niwrap_afni-0.5.2.dist-info}/RECORD +111 -111
- {niwrap_afni-0.5.0.dist-info → niwrap_afni-0.5.2.dist-info}/WHEEL +0 -0
|
@@ -6,7 +6,7 @@ import pathlib
|
|
|
6
6
|
from styxdefs import *
|
|
7
7
|
|
|
8
8
|
TEDANA_WRAPPER_PY_METADATA = Metadata(
|
|
9
|
-
id="
|
|
9
|
+
id="2c08ca0025238427f67e66b767bc36524812cd16.boutiques",
|
|
10
10
|
name="tedana_wrapper.py",
|
|
11
11
|
package="afni",
|
|
12
12
|
container_image_tag="afni/afni_make_build:AFNI_24.2.06",
|
|
@@ -26,6 +26,8 @@ TedanaWrapperPyParameters = typing.TypedDict('TedanaWrapperPyParameters', {
|
|
|
26
26
|
"tedana_is_exec": bool,
|
|
27
27
|
"ted_label": typing.NotRequired[str | None],
|
|
28
28
|
"tedana_opts": typing.NotRequired[str | None],
|
|
29
|
+
"help": bool,
|
|
30
|
+
"detailed_help": bool,
|
|
29
31
|
})
|
|
30
32
|
|
|
31
33
|
|
|
@@ -85,6 +87,8 @@ def tedana_wrapper_py_params(
|
|
|
85
87
|
tedana_is_exec: bool = False,
|
|
86
88
|
ted_label: str | None = None,
|
|
87
89
|
tedana_opts: str | None = None,
|
|
90
|
+
help_: bool = False,
|
|
91
|
+
detailed_help: bool = False,
|
|
88
92
|
) -> TedanaWrapperPyParameters:
|
|
89
93
|
"""
|
|
90
94
|
Build parameters.
|
|
@@ -106,6 +110,8 @@ def tedana_wrapper_py_params(
|
|
|
106
110
|
PATH).
|
|
107
111
|
tedana_opts: Additional options to pass to tedana.py. (In quotes)\
|
|
108
112
|
Example: '--initcost=tanh --conv=2.5e-5'.
|
|
113
|
+
help_: Show help message and exit.
|
|
114
|
+
detailed_help: Show detailed help and exit.
|
|
109
115
|
Returns:
|
|
110
116
|
Parameter dictionary
|
|
111
117
|
"""
|
|
@@ -117,6 +123,8 @@ def tedana_wrapper_py_params(
|
|
|
117
123
|
"save_all": save_all,
|
|
118
124
|
"prep_only": prep_only,
|
|
119
125
|
"tedana_is_exec": tedana_is_exec,
|
|
126
|
+
"help": help_,
|
|
127
|
+
"detailed_help": detailed_help,
|
|
120
128
|
}
|
|
121
129
|
if results_dir is not None:
|
|
122
130
|
params["results_dir"] = results_dir
|
|
@@ -189,6 +197,10 @@ def tedana_wrapper_py_cargs(
|
|
|
189
197
|
"-tedana_opts",
|
|
190
198
|
params.get("tedana_opts")
|
|
191
199
|
])
|
|
200
|
+
if params.get("help"):
|
|
201
|
+
cargs.append("-h")
|
|
202
|
+
if params.get("detailed_help"):
|
|
203
|
+
cargs.append("-help")
|
|
192
204
|
return cargs
|
|
193
205
|
|
|
194
206
|
|
|
@@ -249,6 +261,8 @@ def tedana_wrapper_py(
|
|
|
249
261
|
tedana_is_exec: bool = False,
|
|
250
262
|
ted_label: str | None = None,
|
|
251
263
|
tedana_opts: str | None = None,
|
|
264
|
+
help_: bool = False,
|
|
265
|
+
detailed_help: bool = False,
|
|
252
266
|
runner: Runner | None = None,
|
|
253
267
|
) -> TedanaWrapperPyOutputs:
|
|
254
268
|
"""
|
|
@@ -275,6 +289,8 @@ def tedana_wrapper_py(
|
|
|
275
289
|
PATH).
|
|
276
290
|
tedana_opts: Additional options to pass to tedana.py. (In quotes)\
|
|
277
291
|
Example: '--initcost=tanh --conv=2.5e-5'.
|
|
292
|
+
help_: Show help message and exit.
|
|
293
|
+
detailed_help: Show detailed help and exit.
|
|
278
294
|
runner: Command runner.
|
|
279
295
|
Returns:
|
|
280
296
|
NamedTuple of outputs (described in `TedanaWrapperPyOutputs`).
|
|
@@ -293,6 +309,8 @@ def tedana_wrapper_py(
|
|
|
293
309
|
tedana_is_exec=tedana_is_exec,
|
|
294
310
|
ted_label=ted_label,
|
|
295
311
|
tedana_opts=tedana_opts,
|
|
312
|
+
help_=help_,
|
|
313
|
+
detailed_help=detailed_help,
|
|
296
314
|
)
|
|
297
315
|
return tedana_wrapper_py_execute(params, execution)
|
|
298
316
|
|
niwrap_afni/afni/v_1d_bport.py
CHANGED
|
@@ -6,7 +6,7 @@ import pathlib
|
|
|
6
6
|
from styxdefs import *
|
|
7
7
|
|
|
8
8
|
V_1D_BPORT_METADATA = Metadata(
|
|
9
|
-
id="
|
|
9
|
+
id="3e21c923df63dc56e984c041d63c42544214ee22.boutiques",
|
|
10
10
|
name="1dBport",
|
|
11
11
|
package="afni",
|
|
12
12
|
container_image_tag="afni/afni_make_build:AFNI_24.2.06",
|
|
@@ -17,6 +17,7 @@ V1dBportParameters = typing.TypedDict('V1dBportParameters', {
|
|
|
17
17
|
"__STYX_TYPE__": typing.Literal["1dBport"],
|
|
18
18
|
"band": list[float],
|
|
19
19
|
"invert": bool,
|
|
20
|
+
"nozero": bool,
|
|
20
21
|
"noconst": bool,
|
|
21
22
|
"quad": bool,
|
|
22
23
|
"input_dataset": typing.NotRequired[InputPathType | None],
|
|
@@ -72,6 +73,7 @@ class V1dBportOutputs(typing.NamedTuple):
|
|
|
72
73
|
def v_1d_bport_params(
|
|
73
74
|
band: list[float],
|
|
74
75
|
invert: bool = False,
|
|
76
|
+
nozero: bool = False,
|
|
75
77
|
noconst: bool = False,
|
|
76
78
|
quad: bool = False,
|
|
77
79
|
input_dataset: InputPathType | None = None,
|
|
@@ -87,6 +89,8 @@ def v_1d_bport_params(
|
|
|
87
89
|
band: Specify lowest and highest frequencies in the passband.
|
|
88
90
|
invert: Invert the selection after computing which frequency indexes\
|
|
89
91
|
correspond to the input band(s).
|
|
92
|
+
nozero: Do NOT generate the 0 frequency (constant) component when fbot\
|
|
93
|
+
= 0.
|
|
90
94
|
noconst: Same as -nozero. Do NOT generate the 0 frequency (constant)\
|
|
91
95
|
component when fbot = 0.
|
|
92
96
|
quad: Add regressors for linear and quadratic trends.
|
|
@@ -103,6 +107,7 @@ def v_1d_bport_params(
|
|
|
103
107
|
"__STYXTYPE__": "1dBport",
|
|
104
108
|
"band": band,
|
|
105
109
|
"invert": invert,
|
|
110
|
+
"nozero": nozero,
|
|
106
111
|
"noconst": noconst,
|
|
107
112
|
"quad": quad,
|
|
108
113
|
}
|
|
@@ -140,6 +145,8 @@ def v_1d_bport_cargs(
|
|
|
140
145
|
])
|
|
141
146
|
if params.get("invert"):
|
|
142
147
|
cargs.append("-invert")
|
|
148
|
+
if params.get("nozero"):
|
|
149
|
+
cargs.append("-nozero")
|
|
143
150
|
if params.get("noconst"):
|
|
144
151
|
cargs.append("-noconst")
|
|
145
152
|
if params.get("quad"):
|
|
@@ -219,6 +226,7 @@ def v_1d_bport_execute(
|
|
|
219
226
|
def v_1d_bport(
|
|
220
227
|
band: list[float],
|
|
221
228
|
invert: bool = False,
|
|
229
|
+
nozero: bool = False,
|
|
222
230
|
noconst: bool = False,
|
|
223
231
|
quad: bool = False,
|
|
224
232
|
input_dataset: InputPathType | None = None,
|
|
@@ -239,6 +247,8 @@ def v_1d_bport(
|
|
|
239
247
|
band: Specify lowest and highest frequencies in the passband.
|
|
240
248
|
invert: Invert the selection after computing which frequency indexes\
|
|
241
249
|
correspond to the input band(s).
|
|
250
|
+
nozero: Do NOT generate the 0 frequency (constant) component when fbot\
|
|
251
|
+
= 0.
|
|
242
252
|
noconst: Same as -nozero. Do NOT generate the 0 frequency (constant)\
|
|
243
253
|
component when fbot = 0.
|
|
244
254
|
quad: Add regressors for linear and quadratic trends.
|
|
@@ -257,6 +267,7 @@ def v_1d_bport(
|
|
|
257
267
|
params = v_1d_bport_params(
|
|
258
268
|
band=band,
|
|
259
269
|
invert=invert,
|
|
270
|
+
nozero=nozero,
|
|
260
271
|
noconst=noconst,
|
|
261
272
|
quad=quad,
|
|
262
273
|
input_dataset=input_dataset,
|
|
@@ -6,7 +6,7 @@ import pathlib
|
|
|
6
6
|
from styxdefs import *
|
|
7
7
|
|
|
8
8
|
V_1D_CORRELATE_METADATA = Metadata(
|
|
9
|
-
id="
|
|
9
|
+
id="f3dbbb641ceed6bf13990065b1b59dc542a7a7fa.boutiques",
|
|
10
10
|
name="1dCorrelate",
|
|
11
11
|
package="afni",
|
|
12
12
|
container_image_tag="afni/afni_make_build:AFNI_24.2.06",
|
|
@@ -18,7 +18,11 @@ V1dCorrelateParameters = typing.TypedDict('V1dCorrelateParameters', {
|
|
|
18
18
|
"ktaub": bool,
|
|
19
19
|
"nboot": typing.NotRequired[float | None],
|
|
20
20
|
"alpha": typing.NotRequired[float | None],
|
|
21
|
+
"block": bool,
|
|
21
22
|
"blk": bool,
|
|
23
|
+
"pearson": bool,
|
|
24
|
+
"spearman": bool,
|
|
25
|
+
"quadrant": bool,
|
|
22
26
|
"input_files": list[InputPathType],
|
|
23
27
|
})
|
|
24
28
|
|
|
@@ -67,7 +71,11 @@ def v_1d_correlate_params(
|
|
|
67
71
|
ktaub: bool = False,
|
|
68
72
|
nboot: float | None = None,
|
|
69
73
|
alpha: float | None = None,
|
|
74
|
+
block: bool = False,
|
|
70
75
|
blk: bool = False,
|
|
76
|
+
pearson: bool = False,
|
|
77
|
+
spearman: bool = False,
|
|
78
|
+
quadrant: bool = False,
|
|
71
79
|
) -> V1dCorrelateParameters:
|
|
72
80
|
"""
|
|
73
81
|
Build parameters.
|
|
@@ -77,14 +85,23 @@ def v_1d_correlate_params(
|
|
|
77
85
|
ktaub: Kendall's tau_b correlation (popular somewhere, maybe).
|
|
78
86
|
nboot: Set the number of bootstrap replicates.
|
|
79
87
|
alpha: Set the 2-sided confidence interval width to '100-A' percent.
|
|
88
|
+
block: Use variable-length block resampling to account for serial\
|
|
89
|
+
correlation.
|
|
80
90
|
blk: Alternate flag for variable-length block resampling.
|
|
91
|
+
pearson: Pearson correlation (the default method).
|
|
92
|
+
spearman: Spearman (rank) correlation (more robust versus outliers).
|
|
93
|
+
quadrant: Quadrant (binarized) correlation (most robust, but weaker).
|
|
81
94
|
Returns:
|
|
82
95
|
Parameter dictionary
|
|
83
96
|
"""
|
|
84
97
|
params = {
|
|
85
98
|
"__STYXTYPE__": "1dCorrelate",
|
|
86
99
|
"ktaub": ktaub,
|
|
100
|
+
"block": block,
|
|
87
101
|
"blk": blk,
|
|
102
|
+
"pearson": pearson,
|
|
103
|
+
"spearman": spearman,
|
|
104
|
+
"quadrant": quadrant,
|
|
88
105
|
"input_files": input_files,
|
|
89
106
|
}
|
|
90
107
|
if nboot is not None:
|
|
@@ -121,8 +138,16 @@ def v_1d_correlate_cargs(
|
|
|
121
138
|
"-alpha",
|
|
122
139
|
str(params.get("alpha"))
|
|
123
140
|
])
|
|
141
|
+
if params.get("block"):
|
|
142
|
+
cargs.append("-block")
|
|
124
143
|
if params.get("blk"):
|
|
125
144
|
cargs.append("-blk")
|
|
145
|
+
if params.get("pearson"):
|
|
146
|
+
cargs.append("-Pearson")
|
|
147
|
+
if params.get("spearman"):
|
|
148
|
+
cargs.append("-Spearman")
|
|
149
|
+
if params.get("quadrant"):
|
|
150
|
+
cargs.append("-Quadrant")
|
|
126
151
|
cargs.extend([execution.input_file(f) for f in params.get("input_files")])
|
|
127
152
|
return cargs
|
|
128
153
|
|
|
@@ -176,7 +201,11 @@ def v_1d_correlate(
|
|
|
176
201
|
ktaub: bool = False,
|
|
177
202
|
nboot: float | None = None,
|
|
178
203
|
alpha: float | None = None,
|
|
204
|
+
block: bool = False,
|
|
179
205
|
blk: bool = False,
|
|
206
|
+
pearson: bool = False,
|
|
207
|
+
spearman: bool = False,
|
|
208
|
+
quadrant: bool = False,
|
|
180
209
|
runner: Runner | None = None,
|
|
181
210
|
) -> V1dCorrelateOutputs:
|
|
182
211
|
"""
|
|
@@ -192,7 +221,12 @@ def v_1d_correlate(
|
|
|
192
221
|
ktaub: Kendall's tau_b correlation (popular somewhere, maybe).
|
|
193
222
|
nboot: Set the number of bootstrap replicates.
|
|
194
223
|
alpha: Set the 2-sided confidence interval width to '100-A' percent.
|
|
224
|
+
block: Use variable-length block resampling to account for serial\
|
|
225
|
+
correlation.
|
|
195
226
|
blk: Alternate flag for variable-length block resampling.
|
|
227
|
+
pearson: Pearson correlation (the default method).
|
|
228
|
+
spearman: Spearman (rank) correlation (more robust versus outliers).
|
|
229
|
+
quadrant: Quadrant (binarized) correlation (most robust, but weaker).
|
|
196
230
|
runner: Command runner.
|
|
197
231
|
Returns:
|
|
198
232
|
NamedTuple of outputs (described in `V1dCorrelateOutputs`).
|
|
@@ -203,7 +237,11 @@ def v_1d_correlate(
|
|
|
203
237
|
ktaub=ktaub,
|
|
204
238
|
nboot=nboot,
|
|
205
239
|
alpha=alpha,
|
|
240
|
+
block=block,
|
|
206
241
|
blk=blk,
|
|
242
|
+
pearson=pearson,
|
|
243
|
+
spearman=spearman,
|
|
244
|
+
quadrant=quadrant,
|
|
207
245
|
input_files=input_files,
|
|
208
246
|
)
|
|
209
247
|
return v_1d_correlate_execute(params, execution)
|
niwrap_afni/afni/v_1d_marry.py
CHANGED
|
@@ -6,7 +6,7 @@ import pathlib
|
|
|
6
6
|
from styxdefs import *
|
|
7
7
|
|
|
8
8
|
V_1D_MARRY_METADATA = Metadata(
|
|
9
|
-
id="
|
|
9
|
+
id="7a4e380e9b92893751b846cf2eca95ba7f37ec68.boutiques",
|
|
10
10
|
name="1dMarry",
|
|
11
11
|
package="afni",
|
|
12
12
|
container_image_tag="afni/afni_make_build:AFNI_24.2.06",
|
|
@@ -118,7 +118,6 @@ def v_1d_marry_cargs(
|
|
|
118
118
|
if params.get("divorce"):
|
|
119
119
|
cargs.append("-divorce")
|
|
120
120
|
cargs.extend([execution.input_file(f) for f in params.get("files")])
|
|
121
|
-
cargs.append("[FILE2]")
|
|
122
121
|
return cargs
|
|
123
122
|
|
|
124
123
|
|
niwrap_afni/afni/v_1d_rplot.py
CHANGED
|
@@ -6,7 +6,7 @@ import pathlib
|
|
|
6
6
|
from styxdefs import *
|
|
7
7
|
|
|
8
8
|
V_1D_RPLOT_METADATA = Metadata(
|
|
9
|
-
id="
|
|
9
|
+
id="a023c13860bb79baca3021cecec486f2e6d4bf18.boutiques",
|
|
10
10
|
name="1dRplot",
|
|
11
11
|
package="afni",
|
|
12
12
|
container_image_tag="afni/afni_make_build:AFNI_24.2.06",
|
|
@@ -16,6 +16,24 @@ V_1D_RPLOT_METADATA = Metadata(
|
|
|
16
16
|
V1dRplotParameters = typing.TypedDict('V1dRplotParameters', {
|
|
17
17
|
"__STYX_TYPE__": typing.Literal["1dRplot"],
|
|
18
18
|
"input_file": InputPathType,
|
|
19
|
+
"output_prefix": typing.NotRequired[str | None],
|
|
20
|
+
"save_size": typing.NotRequired[list[float] | None],
|
|
21
|
+
"TR": typing.NotRequired[float | None],
|
|
22
|
+
"title": typing.NotRequired[str | None],
|
|
23
|
+
"input_type": typing.NotRequired[typing.Literal["VOLREG", "XMAT"] | None],
|
|
24
|
+
"legend_font_size": typing.NotRequired[float | None],
|
|
25
|
+
"left_y_margin_text": typing.NotRequired[str | None],
|
|
26
|
+
"right_y_margin_text": typing.NotRequired[str | None],
|
|
27
|
+
"x_axis_label": typing.NotRequired[str | None],
|
|
28
|
+
"y_axis_label": typing.NotRequired[str | None],
|
|
29
|
+
"x_axis_range": typing.NotRequired[list[float] | None],
|
|
30
|
+
"y_axis_range": typing.NotRequired[list[float] | None],
|
|
31
|
+
"plot_char": typing.NotRequired[list[str] | None],
|
|
32
|
+
"group_labels": typing.NotRequired[list[str] | None],
|
|
33
|
+
"legend_show": bool,
|
|
34
|
+
"legend_position": typing.NotRequired[typing.Literal["bottomright", "bottom", "bottomleft", "left", "topleft", "top", "topright", "right", "center"] | None],
|
|
35
|
+
"save_plot": bool,
|
|
36
|
+
"column_name_show": bool,
|
|
19
37
|
})
|
|
20
38
|
|
|
21
39
|
|
|
@@ -57,25 +75,98 @@ class V1dRplotOutputs(typing.NamedTuple):
|
|
|
57
75
|
"""
|
|
58
76
|
root: OutputPathType
|
|
59
77
|
"""Output root folder. This is the root folder for all outputs."""
|
|
60
|
-
output_plot: OutputPathType
|
|
78
|
+
output_plot: OutputPathType | None
|
|
61
79
|
"""Output plot file"""
|
|
62
80
|
|
|
63
81
|
|
|
64
82
|
def v_1d_rplot_params(
|
|
65
83
|
input_file: InputPathType,
|
|
84
|
+
output_prefix: str | None = None,
|
|
85
|
+
save_size: list[float] | None = None,
|
|
86
|
+
tr: float | None = None,
|
|
87
|
+
title: str | None = None,
|
|
88
|
+
input_type: typing.Literal["VOLREG", "XMAT"] | None = None,
|
|
89
|
+
legend_font_size: float | None = None,
|
|
90
|
+
left_y_margin_text: str | None = None,
|
|
91
|
+
right_y_margin_text: str | None = None,
|
|
92
|
+
x_axis_label: str | None = None,
|
|
93
|
+
y_axis_label: str | None = None,
|
|
94
|
+
x_axis_range: list[float] | None = None,
|
|
95
|
+
y_axis_range: list[float] | None = None,
|
|
96
|
+
plot_char: list[str] | None = None,
|
|
97
|
+
group_labels: list[str] | None = None,
|
|
98
|
+
legend_show: bool = False,
|
|
99
|
+
legend_position: typing.Literal["bottomright", "bottom", "bottomleft", "left", "topleft", "top", "topright", "right", "center"] | None = None,
|
|
100
|
+
save_plot: bool = False,
|
|
101
|
+
column_name_show: bool = False,
|
|
66
102
|
) -> V1dRplotParameters:
|
|
67
103
|
"""
|
|
68
104
|
Build parameters.
|
|
69
105
|
|
|
70
106
|
Args:
|
|
71
107
|
input_file: Input 1D file to plot.
|
|
108
|
+
output_prefix: Output prefix. See also -save.
|
|
109
|
+
save_size: Save figure size in pixels. Default is 2000 2000.
|
|
110
|
+
tr: Sampling period, in seconds.
|
|
111
|
+
title: Graph title. File name is used by default. Use NONE to be sure\
|
|
112
|
+
no title is used.
|
|
113
|
+
input_type: Type of data in 1D file. Choose from 'VOLREG' or 'XMAT'.
|
|
114
|
+
legend_font_size: Font size for legend text.
|
|
115
|
+
left_y_margin_text: Text to be placed at left Y margin. You need one\
|
|
116
|
+
string per column.
|
|
117
|
+
right_y_margin_text: Text to be placed at right Y margin. You need one\
|
|
118
|
+
string per column.
|
|
119
|
+
x_axis_label: Labels for the X axis.
|
|
120
|
+
y_axis_label: Labels for the Y axis.
|
|
121
|
+
x_axis_range: Range of X axis. STEP is optional.
|
|
122
|
+
y_axis_range: Range of Y axis. STEP is optional.
|
|
123
|
+
plot_char: Symbols for each column in input.
|
|
124
|
+
group_labels: Legends assigned to each group. Default is no labeling.
|
|
125
|
+
legend_show: Show legend.
|
|
126
|
+
legend_position: Legend position. Choose from: bottomright, bottom,\
|
|
127
|
+
bottomleft, left, topleft, top, topright, right, center.
|
|
128
|
+
save_plot: Save plot and quit. No need for -prefix with this option.
|
|
129
|
+
column_name_show: Show names of column in input.
|
|
72
130
|
Returns:
|
|
73
131
|
Parameter dictionary
|
|
74
132
|
"""
|
|
75
133
|
params = {
|
|
76
134
|
"__STYXTYPE__": "1dRplot",
|
|
77
135
|
"input_file": input_file,
|
|
136
|
+
"legend_show": legend_show,
|
|
137
|
+
"save_plot": save_plot,
|
|
138
|
+
"column_name_show": column_name_show,
|
|
78
139
|
}
|
|
140
|
+
if output_prefix is not None:
|
|
141
|
+
params["output_prefix"] = output_prefix
|
|
142
|
+
if save_size is not None:
|
|
143
|
+
params["save_size"] = save_size
|
|
144
|
+
if tr is not None:
|
|
145
|
+
params["TR"] = tr
|
|
146
|
+
if title is not None:
|
|
147
|
+
params["title"] = title
|
|
148
|
+
if input_type is not None:
|
|
149
|
+
params["input_type"] = input_type
|
|
150
|
+
if legend_font_size is not None:
|
|
151
|
+
params["legend_font_size"] = legend_font_size
|
|
152
|
+
if left_y_margin_text is not None:
|
|
153
|
+
params["left_y_margin_text"] = left_y_margin_text
|
|
154
|
+
if right_y_margin_text is not None:
|
|
155
|
+
params["right_y_margin_text"] = right_y_margin_text
|
|
156
|
+
if x_axis_label is not None:
|
|
157
|
+
params["x_axis_label"] = x_axis_label
|
|
158
|
+
if y_axis_label is not None:
|
|
159
|
+
params["y_axis_label"] = y_axis_label
|
|
160
|
+
if x_axis_range is not None:
|
|
161
|
+
params["x_axis_range"] = x_axis_range
|
|
162
|
+
if y_axis_range is not None:
|
|
163
|
+
params["y_axis_range"] = y_axis_range
|
|
164
|
+
if plot_char is not None:
|
|
165
|
+
params["plot_char"] = plot_char
|
|
166
|
+
if group_labels is not None:
|
|
167
|
+
params["group_labels"] = group_labels
|
|
168
|
+
if legend_position is not None:
|
|
169
|
+
params["legend_position"] = legend_position
|
|
79
170
|
return params
|
|
80
171
|
|
|
81
172
|
|
|
@@ -98,7 +189,87 @@ def v_1d_rplot_cargs(
|
|
|
98
189
|
"-input",
|
|
99
190
|
execution.input_file(params.get("input_file"))
|
|
100
191
|
])
|
|
101
|
-
|
|
192
|
+
if params.get("output_prefix") is not None:
|
|
193
|
+
cargs.extend([
|
|
194
|
+
"-prefix",
|
|
195
|
+
params.get("output_prefix")
|
|
196
|
+
])
|
|
197
|
+
if params.get("save_size") is not None:
|
|
198
|
+
cargs.extend([
|
|
199
|
+
"-save.size",
|
|
200
|
+
*map(str, params.get("save_size"))
|
|
201
|
+
])
|
|
202
|
+
if params.get("TR") is not None:
|
|
203
|
+
cargs.extend([
|
|
204
|
+
"-TR",
|
|
205
|
+
str(params.get("TR"))
|
|
206
|
+
])
|
|
207
|
+
if params.get("title") is not None:
|
|
208
|
+
cargs.extend([
|
|
209
|
+
"-title",
|
|
210
|
+
params.get("title")
|
|
211
|
+
])
|
|
212
|
+
if params.get("input_type") is not None:
|
|
213
|
+
cargs.extend([
|
|
214
|
+
"-input_type",
|
|
215
|
+
params.get("input_type")
|
|
216
|
+
])
|
|
217
|
+
if params.get("legend_font_size") is not None:
|
|
218
|
+
cargs.extend([
|
|
219
|
+
"-leg.fontsize",
|
|
220
|
+
str(params.get("legend_font_size"))
|
|
221
|
+
])
|
|
222
|
+
if params.get("left_y_margin_text") is not None:
|
|
223
|
+
cargs.extend([
|
|
224
|
+
"-col.text.lym",
|
|
225
|
+
params.get("left_y_margin_text")
|
|
226
|
+
])
|
|
227
|
+
if params.get("right_y_margin_text") is not None:
|
|
228
|
+
cargs.extend([
|
|
229
|
+
"-col.text.rym",
|
|
230
|
+
params.get("right_y_margin_text")
|
|
231
|
+
])
|
|
232
|
+
if params.get("x_axis_label") is not None:
|
|
233
|
+
cargs.extend([
|
|
234
|
+
"-xax.label",
|
|
235
|
+
params.get("x_axis_label")
|
|
236
|
+
])
|
|
237
|
+
if params.get("y_axis_label") is not None:
|
|
238
|
+
cargs.extend([
|
|
239
|
+
"-yax.label",
|
|
240
|
+
params.get("y_axis_label")
|
|
241
|
+
])
|
|
242
|
+
if params.get("x_axis_range") is not None:
|
|
243
|
+
cargs.extend([
|
|
244
|
+
"-xax.lim",
|
|
245
|
+
*map(str, params.get("x_axis_range"))
|
|
246
|
+
])
|
|
247
|
+
if params.get("y_axis_range") is not None:
|
|
248
|
+
cargs.extend([
|
|
249
|
+
"-yax.lim",
|
|
250
|
+
*map(str, params.get("y_axis_range"))
|
|
251
|
+
])
|
|
252
|
+
if params.get("plot_char") is not None:
|
|
253
|
+
cargs.extend([
|
|
254
|
+
"-col.plot.char",
|
|
255
|
+
*params.get("plot_char")
|
|
256
|
+
])
|
|
257
|
+
if params.get("group_labels") is not None:
|
|
258
|
+
cargs.extend([
|
|
259
|
+
"-grp.label",
|
|
260
|
+
*params.get("group_labels")
|
|
261
|
+
])
|
|
262
|
+
if params.get("legend_show"):
|
|
263
|
+
cargs.append("-leg.show")
|
|
264
|
+
if params.get("legend_position") is not None:
|
|
265
|
+
cargs.extend([
|
|
266
|
+
"-leg.position",
|
|
267
|
+
params.get("legend_position")
|
|
268
|
+
])
|
|
269
|
+
if params.get("save_plot"):
|
|
270
|
+
cargs.append("-save")
|
|
271
|
+
if params.get("column_name_show"):
|
|
272
|
+
cargs.append("-col.name.show")
|
|
102
273
|
return cargs
|
|
103
274
|
|
|
104
275
|
|
|
@@ -117,7 +288,7 @@ def v_1d_rplot_outputs(
|
|
|
117
288
|
"""
|
|
118
289
|
ret = V1dRplotOutputs(
|
|
119
290
|
root=execution.output_file("."),
|
|
120
|
-
output_plot=execution.output_file("
|
|
291
|
+
output_plot=execution.output_file(params.get("output_prefix") + "*.jpg") if (params.get("output_prefix") is not None) else None,
|
|
121
292
|
)
|
|
122
293
|
return ret
|
|
123
294
|
|
|
@@ -148,6 +319,24 @@ def v_1d_rplot_execute(
|
|
|
148
319
|
|
|
149
320
|
def v_1d_rplot(
|
|
150
321
|
input_file: InputPathType,
|
|
322
|
+
output_prefix: str | None = None,
|
|
323
|
+
save_size: list[float] | None = None,
|
|
324
|
+
tr: float | None = None,
|
|
325
|
+
title: str | None = None,
|
|
326
|
+
input_type: typing.Literal["VOLREG", "XMAT"] | None = None,
|
|
327
|
+
legend_font_size: float | None = None,
|
|
328
|
+
left_y_margin_text: str | None = None,
|
|
329
|
+
right_y_margin_text: str | None = None,
|
|
330
|
+
x_axis_label: str | None = None,
|
|
331
|
+
y_axis_label: str | None = None,
|
|
332
|
+
x_axis_range: list[float] | None = None,
|
|
333
|
+
y_axis_range: list[float] | None = None,
|
|
334
|
+
plot_char: list[str] | None = None,
|
|
335
|
+
group_labels: list[str] | None = None,
|
|
336
|
+
legend_show: bool = False,
|
|
337
|
+
legend_position: typing.Literal["bottomright", "bottom", "bottomleft", "left", "topleft", "top", "topright", "right", "center"] | None = None,
|
|
338
|
+
save_plot: bool = False,
|
|
339
|
+
column_name_show: bool = False,
|
|
151
340
|
runner: Runner | None = None,
|
|
152
341
|
) -> V1dRplotOutputs:
|
|
153
342
|
"""
|
|
@@ -159,6 +348,28 @@ def v_1d_rplot(
|
|
|
159
348
|
|
|
160
349
|
Args:
|
|
161
350
|
input_file: Input 1D file to plot.
|
|
351
|
+
output_prefix: Output prefix. See also -save.
|
|
352
|
+
save_size: Save figure size in pixels. Default is 2000 2000.
|
|
353
|
+
tr: Sampling period, in seconds.
|
|
354
|
+
title: Graph title. File name is used by default. Use NONE to be sure\
|
|
355
|
+
no title is used.
|
|
356
|
+
input_type: Type of data in 1D file. Choose from 'VOLREG' or 'XMAT'.
|
|
357
|
+
legend_font_size: Font size for legend text.
|
|
358
|
+
left_y_margin_text: Text to be placed at left Y margin. You need one\
|
|
359
|
+
string per column.
|
|
360
|
+
right_y_margin_text: Text to be placed at right Y margin. You need one\
|
|
361
|
+
string per column.
|
|
362
|
+
x_axis_label: Labels for the X axis.
|
|
363
|
+
y_axis_label: Labels for the Y axis.
|
|
364
|
+
x_axis_range: Range of X axis. STEP is optional.
|
|
365
|
+
y_axis_range: Range of Y axis. STEP is optional.
|
|
366
|
+
plot_char: Symbols for each column in input.
|
|
367
|
+
group_labels: Legends assigned to each group. Default is no labeling.
|
|
368
|
+
legend_show: Show legend.
|
|
369
|
+
legend_position: Legend position. Choose from: bottomright, bottom,\
|
|
370
|
+
bottomleft, left, topleft, top, topright, right, center.
|
|
371
|
+
save_plot: Save plot and quit. No need for -prefix with this option.
|
|
372
|
+
column_name_show: Show names of column in input.
|
|
162
373
|
runner: Command runner.
|
|
163
374
|
Returns:
|
|
164
375
|
NamedTuple of outputs (described in `V1dRplotOutputs`).
|
|
@@ -167,6 +378,24 @@ def v_1d_rplot(
|
|
|
167
378
|
execution = runner.start_execution(V_1D_RPLOT_METADATA)
|
|
168
379
|
params = v_1d_rplot_params(
|
|
169
380
|
input_file=input_file,
|
|
381
|
+
output_prefix=output_prefix,
|
|
382
|
+
save_size=save_size,
|
|
383
|
+
tr=tr,
|
|
384
|
+
title=title,
|
|
385
|
+
input_type=input_type,
|
|
386
|
+
legend_font_size=legend_font_size,
|
|
387
|
+
left_y_margin_text=left_y_margin_text,
|
|
388
|
+
right_y_margin_text=right_y_margin_text,
|
|
389
|
+
x_axis_label=x_axis_label,
|
|
390
|
+
y_axis_label=y_axis_label,
|
|
391
|
+
x_axis_range=x_axis_range,
|
|
392
|
+
y_axis_range=y_axis_range,
|
|
393
|
+
plot_char=plot_char,
|
|
394
|
+
group_labels=group_labels,
|
|
395
|
+
legend_show=legend_show,
|
|
396
|
+
legend_position=legend_position,
|
|
397
|
+
save_plot=save_plot,
|
|
398
|
+
column_name_show=column_name_show,
|
|
170
399
|
)
|
|
171
400
|
return v_1d_rplot_execute(params, execution)
|
|
172
401
|
|