Skip to content

Commit 4ac36f1

Browse files
authored
Merge pull request #394 from GispoCoding/enable_json_dumps_in_cli
Enable JSON formatted string outputs in CLI
2 parents 57983c9 + c6e54c1 commit 4ac36f1

File tree

2 files changed

+20
-27
lines changed

2 files changed

+20
-27
lines changed

eis_toolkit/cli.py

+19-26
Original file line numberDiff line numberDiff line change
@@ -331,7 +331,6 @@ def normality_test_raster_cli(input_raster: INPUT_FILE_OPTION, bands: Optional[L
331331
with rasterio.open(input_raster) as raster:
332332
data = raster.read()
333333
typer.echo("Progress: 25%")
334-
print(bands)
335334
if len(bands) == 0:
336335
bands = None
337336
results_dict = normality_test_array(data=data, bands=bands, nodata_value=raster.nodata)
@@ -340,6 +339,7 @@ def normality_test_raster_cli(input_raster: INPUT_FILE_OPTION, bands: Optional[L
340339

341340
json_str = json.dumps(results_dict)
342341
typer.echo("Progress: 100%")
342+
343343
typer.echo(f"Results: {json_str}")
344344
typer.echo("Normality test (raster) completed")
345345

@@ -361,6 +361,7 @@ def normality_test_vector_cli(input_vector: INPUT_FILE_OPTION, columns: Optional
361361

362362
json_str = json.dumps(results_dict)
363363
typer.echo("Progress: 100%")
364+
364365
typer.echo(f"Results: {json_str}")
365366
typer.echo("Normality test (vector) completed")
366367

@@ -386,6 +387,7 @@ def chi_square_test_cli(
386387

387388
json_str = json.dumps(results_dict)
388389
typer.echo("Progress: 100%")
390+
389391
typer.echo(f"Results: {json_str}")
390392
typer.echo("Chi-square test completed")
391393

@@ -665,6 +667,7 @@ def compute_pca_raster_cli(
665667
dst.write(pca_array)
666668

667669
typer.echo("Progress: 100%")
670+
668671
typer.echo(f"Results: {json_str}")
669672
typer.echo(f"PCA computation (raster) completed, output raster saved to {output_raster}.")
670673

@@ -705,6 +708,7 @@ def compute_pca_vector_cli(
705708

706709
pca_gdf.to_file(output_vector)
707710
typer.echo("Progress: 100%")
711+
708712
typer.echo(f"Results: {json_str}")
709713
typer.echo(f"PCA computation (vector) completed, output vector saved to {output_vector}.")
710714

@@ -722,13 +726,10 @@ def descriptive_statistics_raster_cli(input_file: INPUT_FILE_OPTION):
722726
results_dict = descriptive_statistics_raster(raster)
723727
typer.echo("Progress: 75%")
724728

725-
# json_str = json.dumps(results_dict)
729+
json_str = json.dumps(results_dict)
726730
typer.echo("Progress: 100%\n")
727-
# typer.echo(f"Results: {json_str}")
728-
# typer.echo("Results:\n")
729-
for key, value in results_dict.items():
730-
typer.echo(f"{key}: {value}")
731731

732+
typer.echo(f"Results: {json_str}")
732733
typer.echo("\nDescriptive statistics (raster) completed")
733734

734735

@@ -2387,12 +2388,10 @@ def classifier_test_cli(
23872388
with rasterio.open(output_raster_classified, "w", **out_profile) as dst:
23882389
dst.write(predictions_reshaped, 1)
23892390

2390-
typer.echo("\n")
2391-
for key, value in metrics_dict.items():
2392-
typer.echo(f"{key}: {value}")
2393-
typer.echo("\n")
2391+
json_str = json.dumps(metrics_dict)
2392+
typer.echo("Progress: 100% \n")
23942393

2395-
typer.echo("Progress: 100%")
2394+
typer.echo(f"Results: {json_str}")
23962395
typer.echo(
23972396
(
23982397
"Testing classifier model completed, writing rasters to "
@@ -2433,13 +2432,10 @@ def regressor_test_cli(
24332432
with rasterio.open(output_raster, "w", **out_profile) as dst:
24342433
dst.write(predictions_reshaped, 1)
24352434

2436-
typer.echo("\n")
2437-
for key, value in metrics_dict.items():
2438-
typer.echo(f"{key}: {value}")
2439-
typer.echo("\n")
2440-
2441-
typer.echo("Progress: 100%\n")
2435+
json_str = json.dumps(metrics_dict)
2436+
typer.echo("Progress: 100% \n")
24422437

2438+
typer.echo(f"Results: {json_str}")
24432439
typer.echo(f"Testing regressor model completed, writing raster to {output_raster}.")
24442440

24452441

@@ -3119,12 +3115,10 @@ def summarize_probability_metrics_cli(true_labels: INPUT_FILE_OPTION, probabilit
31193115

31203116
typer.echo("Progress: 75%")
31213117

3122-
# json_str = json.dumps(results_dict)
3118+
json_str = json.dumps(results_dict)
31233119
typer.echo("Progress: 100% \n")
3124-
# typer.echo("Results:\n")
3125-
for key, value in results_dict.items():
3126-
typer.echo(f"{key}: {value}")
3127-
# typer.echo(f"Results: {json_str}")
3120+
3121+
typer.echo(f"Results: {json_str}")
31283122
typer.echo("\nGenerating probability metrics summary completed.")
31293123

31303124

@@ -3147,11 +3141,10 @@ def summarize_label_metrics_binary_cli(true_labels: INPUT_FILE_OPTION, predictio
31473141
results_dict = summarize_label_metrics_binary(y_true=y_true, y_pred=y_pred)
31483142
typer.echo("Progress: 75%")
31493143

3150-
# json_str = json.dumps(results_dict)
3144+
json_str = json.dumps(results_dict)
31513145
typer.echo("Progress: 100% \n")
3152-
for key, value in results_dict.items():
3153-
typer.echo(f"{key}: {value}")
3154-
# typer.echo(f"Results: {json_str}")
3146+
3147+
typer.echo(f"Results: {json_str}")
31553148
typer.echo("\n Generating prediction label metrics summary completed.")
31563149

31573150

pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[tool.poetry]
22
name = "eis_toolkit"
3-
version = "0.5.1"
3+
version = "0.5.2"
44
description = "EIS Toolkit is a comprehensive collection of tools suitable for mineral prospectivity mapping. This toolkit has been developed as part of the Exploration Information System project which has been funded by European Union."
55
authors = []
66
maintainers = ["Gispo Ltd. <[email protected]>"]

0 commit comments

Comments
 (0)