Skip to content

Commit 9c55688

Browse files
committed
Add dimension names from coords for CRS lookup
1 parent c9e666f commit 9c55688

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

tests/test_xstac.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import xarray as xr
77

88
from xstac import xarray_to_stac, fix_attrs
9-
from xstac._xstac import _bbox_to_geometry, maybe_infer_reference_system
9+
from xstac._xstac import _bbox_to_geometry, maybe_infer_reference_system, maybe_use_cf_standard_axis
1010

1111

1212
# def test_no_time_dimension(ds, collection_template):
@@ -51,6 +51,22 @@ def test_xarray_to_stac(
5151
assert dimensions == collection_expected_dims
5252
assert result.extra_fields["cube:variables"] == collection_expected_vars
5353

54+
@pytest.mark.parametrize("dimension_key", ["x_dimension", "y_dimension", "temporal_dimension", "longitude", "latitude"])
55+
def test_maybe_use_cf_standard_axis(ds, dimension_key):
56+
match dimension_key:
57+
case "x_dimension":
58+
expected = "x"
59+
case "y_dimension":
60+
expected = "y"
61+
case "temporal_dimension":
62+
expected = "time"
63+
case "longitude":
64+
expected = "lon"
65+
case "latitude":
66+
expected = "lat"
67+
case _:
68+
expected = dimension_key
69+
assert maybe_use_cf_standard_axis(None, dimension_key, ds) == expected
5470

5571
def test_validation_with_none(ds_without_spatial_dims):
5672
# https://github.com/TomAugspurger/xstac/issues/9

xstac/_xstac.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626

2727
SCHEMA_URI = "https://stac-extensions.github.io/datacube/v2.0.0/schema.json"
2828

29-
CF_STANDARD_AXES = dict(temporal_dimension="T", x_dimension="X", y_dimension="Y")
29+
CF_STANDARD_AXES = dict(temporal_dimension="T", x_dimension="X", y_dimension="Y", latitude="latitude", longitude="longitude")
3030

3131

3232
def maybe_use_cf_standard_axis(kw, kw_name, ds):

0 commit comments

Comments
 (0)