Skip to main content

Toolkit to generate Global Area Reference System grids.

Project description

All Contributors https://img.shields.io/badge/License-BSD%203--Clause-yellow.svg https://img.shields.io/pypi/v/gars_field.svg https://pepy.tech/badge/gars_field https://img.shields.io/conda/vn/conda-forge/gars_field.svg https://github.com/corteva/gars-field/workflows/Tests/badge.svg https://codecov.io/gh/corteva/gars-field/branch/main/graph/badge.svg https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white https://img.shields.io/badge/code%20style-black-000000.svg

Bugs/Questions

Usage

GARSField: determine GARS grids based on bounding box

import geopandas
import shapely.geometry
from gars_field import GARSField


geom_bounds = shapely.geometry.box(minx=-175, miny=-76, maxx=-174, maxy=-75)
garsf = GARSField(geom_bounds)
# 6 deg grids (extension)
grids_6deg = garsf.gars_6deg
# 3 deg grids (extension)
grids_3deg = garsf.gars_3deg
# 1 deg grids (extension)
grids_1deg = garsf.gars_1deg
# 30 min grids
grids_30min = garsf.gars_30min
# 15 min grids
grids_15min = garsf.gars_15min
# 5 min grids
grids_5min = garsf.gars_5min
# 1 min grids (extension)
grids_1min = garsf.gars_1min

# convert to geopandas
geopandas.GeoDataFrame(
    {"gars_id": [str(grid) for grid in field.gars_1min]},
    geometry=[grid.polygon for grid in field.gars_1min],
    crs="EPSG:4326",
)

GARSGrid

Grid cell sizes: 1, 5, 15, 30 minutes

from gars_field import GARSGrid

# from latlon
ggrid = GARSGrid.from_latlon(-89.55, -179.57, resolution=5)

# from GARS ID
ggrid = GARSGrid("001AA23")

# get bounding poly
grid_poly = ggrid.polygon

# get GARS ID
gars_id = str(ggrid)

# UTM CRS EPSG Code
epsg_code = ggrid.utm_epsg

EDGARSGrid

This is the extended degree grid system.

Grid cell sizes: 1, 3, 6 degrees

from gars_field import EDGARSGrid

# from latlon
ggrid = EDGARSGrid.from_latlon(-89.55, -179.57, resolution=3)

# from GARS ID
ggrid = EDGARSGrid("D01AA23")

# get bounding poly
grid_poly = ggrid.polygon

# get GARS ID
gars_id = str(ggrid)

# UTM CRS EPSG Code
epsg_code = ggrid.utm_epsg

GEDGARSGrid

This is the giant extended degree grid system

Grid cell sizes: 30, 60 degrees

from gars_field import GEDGARSGrid

# from latlon
ggrid = GEDGARSGrid.from_latlon(-89.55, -179.57, resolution=3)

# from GARS ID
ggrid = GEDGARSGrid("GD1A")

# get bounding poly
grid_poly = ggrid.polygon

# get GARS ID
gars_id = str(ggrid)

Credits

GARSGrid was inspired by:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gars_field-0.3.3.tar.gz (21.9 kB view hashes)

Uploaded Source

Built Distribution

gars_field-0.3.3-py2.py3-none-any.whl (15.9 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page