- GARS - Global Area Reference System
- Field - Corteva Agriscience farming reference.
- Report bugs/feature requests: https://github.com/corteva/gars-field/issues
- Ask questions: https://github.com/corteva/gars-field/discussions
Note
See the module docstrings for more details.
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",
)
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
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
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)
GARSGrid
was inspired by: