Skip to content

Commit

Permalink
chore: idsse-554: create "sci" Python submodule (#53)
Browse files Browse the repository at this point in the history
* create new Python submodule for code that uses numpy, shapely, or pyproj
* removing explicit version from docker pygrib so conda can figure out the version it needs
---------

Co-authored-by: michael.rabellino <[email protected]>
  • Loading branch information
mackenzie-grimes-noaa and rabellino-noaa authored Feb 1, 2024
1 parent ad7d69d commit 3d2e163
Show file tree
Hide file tree
Showing 12 changed files with 22 additions and 27 deletions.
Empty file.
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,9 @@
from PIL import Image
from shapely import from_geojson, from_wkt, Geometry, LineString, MultiPolygon, Polygon


from .grid_proj import GridProj
from .utils import round_
from .vectaster import geographic_to_pixel, rasterize
from idsse.common.utils import round_
from idsse.common.sci.grid_proj import GridProj
from idsse.common.sci.vectaster import geographic_to_pixel, rasterize

logger = logging.getLogger(__name__)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
from pyproj.enums import TransformDirection

from idsse.common.utils import round_values, RoundingParam
from idsse.common.scientific_utils import coordinate_pairs_to_axes
from idsse.common.sci.utils import coordinate_pairs_to_axes

# type hints
Scalar = Union[int, float, np.integer, np.float_]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@
import numpy
from shapely import Geometry, LinearRing, LineString, MultiPolygon, Point, Polygon, from_wkt

from idsse.common.grid_proj import GridProj
from idsse.common.sci.grid_proj import GridProj
from idsse.common.sci.utils import Pixel, Coord, Coords, coordinate_pairs_to_axes
from idsse.common.utils import round_, round_values, RoundingMethod, RoundingParam
from idsse.common.scientific_utils import Pixel, Coord, Coords, coordinate_pairs_to_axes

logger = logging.getLogger(__name__)

Expand Down
Empty file.
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@
import numpy
from pytest import fixture, approx

from idsse.common.geo_image import ColorPalette, GeoImage, normalize, scale_to_color_palette
from idsse.common.grid_proj import GridProj
from idsse.common.netcdf_io import read_netcdf
from idsse.common.sci.geo_image import ColorPalette, GeoImage, normalize, scale_to_color_palette
from idsse.common.sci.grid_proj import GridProj
from idsse.common.sci.netcdf_io import read_netcdf


@fixture
Expand Down Expand Up @@ -376,8 +376,8 @@ def test_color_palette_with_anchor():


def test_add_all_states(proj):
current_path = os.path.dirname(os.path.realpath(__file__))
filename = os.path.join(current_path, 'resources', 'nbm_temp-202211111100-202211121300.nc')
filename = os.path.join(os.path.dirname(os.path.realpath(__file__)), '..', 'resources',
'nbm_temp-202211111100-202211121300.nc')
attrs, data = read_netcdf(filename)
if attrs['data_order'] == 'latitude,longitude':
data = numpy.transpose(data)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
import numpy as np
from pytest import approx, fixture, raises

from idsse.common.grid_proj import GridProj
from idsse.common.sci.grid_proj import GridProj
from idsse.common.utils import round_, RoundingMethod


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,11 @@
from pytest import fixture, approx
from numpy import ndarray

from idsse.common.netcdf_io import read_netcdf, read_netcdf_global_attrs, write_netcdf
from idsse.common.sci.netcdf_io import read_netcdf, read_netcdf_global_attrs, write_netcdf


# test data
EXAMPLE_NETCDF_FILEPATH = os.path.join(
os.path.dirname(__file__),
'resources',
'gridstore55657865.nc'
)
EXAMPLE_NETCDF_FILEPATH = f'{os.path.dirname(__file__)}/../resources/gridstore55657865.nc'

EXAMPLE_ATTRIBUTES = {
'product': 'NBM.AWS.GRIB',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@
import numpy
from pytest import fixture, MonkeyPatch

from idsse.common.grid_proj import GridProj
from idsse.common.vectaster import (geographic_to_pixel,
from idsse.common.sci.grid_proj import GridProj
from idsse.common.sci.vectaster import (geographic_to_pixel,
geographic_linestring_to_pixel,
geographic_point_to_pixel,
geographic_polygon_to_pixel,
Expand Down Expand Up @@ -80,9 +80,9 @@ def test_geographic_to_pixel(monkeypatch: MonkeyPatch, grid_proj: GridProj):
point_mock = Mock()
line_string_mock = Mock()
polygon_mock = Mock()
monkeypatch.setattr('idsse.common.vectaster.geographic_point_to_pixel', point_mock)
monkeypatch.setattr('idsse.common.vectaster.geographic_linestring_to_pixel', line_string_mock)
monkeypatch.setattr('idsse.common.vectaster.geographic_polygon_to_pixel', polygon_mock)
monkeypatch.setattr('idsse.common.sci.vectaster.geographic_point_to_pixel', point_mock)
monkeypatch.setattr('idsse.common.sci.vectaster.geographic_linestring_to_pixel', line_string_mock)
monkeypatch.setattr('idsse.common.sci.vectaster.geographic_polygon_to_pixel', polygon_mock)

_ = geographic_to_pixel(point, grid_proj)
point_mock.assert_called_once_with(point, grid_proj, None)
Expand Down Expand Up @@ -172,9 +172,9 @@ def test_rasterize(monkeypatch: MonkeyPatch, grid_proj: GridProj):
point_mock = Mock()
linestring_mock = Mock()
polygon_mock = Mock()
monkeypatch.setattr('idsse.common.vectaster.rasterize_point', point_mock)
monkeypatch.setattr('idsse.common.vectaster.rasterize_linestring', linestring_mock)
monkeypatch.setattr('idsse.common.vectaster.rasterize_polygon', polygon_mock)
monkeypatch.setattr('idsse.common.sci.vectaster.rasterize_point', point_mock)
monkeypatch.setattr('idsse.common.sci.vectaster.rasterize_linestring', linestring_mock)
monkeypatch.setattr('idsse.common.sci.vectaster.rasterize_polygon', polygon_mock)

rasterize(point, grid_proj)
point_mock.assert_called_once()
Expand Down

0 comments on commit 3d2e163

Please sign in to comment.