Skip to content

Commit

Permalink
fix: missing fragstats abbrevs for core (also use f-strings)
Browse files Browse the repository at this point in the history
  • Loading branch information
martibosch committed Nov 22, 2023
1 parent 83e2c70 commit ea7cde5
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 5 deletions.
8 changes: 6 additions & 2 deletions pylandstats/landscape.py
Original file line number Diff line number Diff line change
Expand Up @@ -256,11 +256,15 @@ def __init__(
"euclidean_nearest_neighbor",
] # 'contiguity_index', 'proximity'

# iterate all patch metrics except "number_of_core_areas"
# iterate all patch metrics except "number_of_core_areas", and add
# "disjunct_core_area"
_PATCH_METRICS = PATCH_METRICS.copy()
_PATCH_METRICS.remove("number_of_core_areas")
_PATCH_METRICS.append("disjunct_core_area")
# we could define the list of suffixes as a class-constant but using it in settings
# would cause a singular import
DISTR_METRICS = [
patch_metric + "_" + suffix
f"{patch_metric}_{suffix}"
for patch_metric in _PATCH_METRICS
for suffix in ["mn", "am", "md", "ra", "sd", "cv"]
]
Expand Down
11 changes: 8 additions & 3 deletions pylandstats/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,18 +42,23 @@
}
# add the class/landscape distribution statistics metrics to the fragstats abbreviation
# dictionary

for metric in [
"area",
"perimeter",
"perimeter_area_ratio",
"shape_index",
"fractal_dimension",
"core_area",
"core_area_index",
"euclidean_nearest_neighbor",
]:
for suffix in ["mn", "am", "md", "ra", "sd", "cv"]:
fragstats_abbrev_dict["{}_{}".format(metric, suffix)] = "{}_{}".format(
fragstats_abbrev_dict[metric], suffix.upper()
)
fragstats_abbrev_dict[
f"{metric}_{suffix}"
] = f"{fragstats_abbrev_dict[metric]}_{suffix.upper()}"
for suffix in ["mn", "am", "md", "ra", "sd", "cv"]:
fragstats_abbrev_dict[f"disjunct_core_area_{suffix}"] = f"DCORE_{suffix}"

# SETTINGS
# TODO: is it worth integrating `metrics` and `metrics_kws` into the settings scheme?
Expand Down

0 comments on commit ea7cde5

Please sign in to comment.