Package: geosyspy
GeosysPyTo be able to discover, request and use imagery products based on  virtual constellation using the <geosys/> API.Who we areProject description·Report Bug·Request FeatureTable of ContentsAbout The ProjectGetting StartedPrerequisitesInstallationUsageSupport developmentResourcesLicenseContactCopyrightsAbout The ProjectEarthDaily Agro is the agricultural analysis division of EartDaily Analytics. Learn more about Earth Daily atEarthDaily Analytics | Satellite imagery & data for agriculture, insurance, surveillance.  EarthDaily Agro uses satellite imaging to provide advanced analytics to mitigate risk and increase efficiencies – leading to more sustainable outcomes for the organizations and people who feed the planet.Throught our <geosys/> platform, we make geospatial analytics easily accessible for you to be browsed or analyzed, within our cloud or within your own environment. We provide developers and data scientists both flexibility and extensibility with analytic ready data and digital agriculture ready development blocks. We empower your team to enrich your systems with information at the field, regional or continent level via our API or Apps.We have a team of experts around the world that understand local crops and ag industry, as well as advanced analytics to support your business.We have established a developer community to provide you with plug-ins and integrations to be able to discover, request and use aggregate imagery products based on Landsat, Sentinel, Modis and many other open and commercial satellite sensors.Thegeosyspypython package aims to provide an easy and ready to use library allowing any Python developers to quickly experience Earthdaily Agro capabilities.(back to top)FeaturesData sourcing:Get aggregated NDVI/EVI normalized times series from Modis satellite imagery as pandas dataframeGet aggregated historical and forecast weather data (precipitation, temperatures...) location based time series as pandas dataframeGet SENTINEL 2, LANDSAT 8 and LANSAT 9 satellite images time series inxarrayformatAnalytic publication:Save and retrieve custom data in Analytics FabrikSeedocumentationandExamplesnotebook for more informationGetting startedPrerequisitesMake sure you have valid credentials. If you need to get trial access, please registerhere.This package has been tested on Python 3.10.11.InstallingCondaIf you are using Conda, there are the steps to follow to create a virtual environment:conda create --name demo
conda activate demoFor Linux / Mac OSpip install geosyspyFor WindowsPlease refer to theinstall.mdfile.Run the package from sourceInstall dependenciesconda config --add channels conda-forge
conda install --file requirements.txtorpip install -r requirements.txtCreate .env fileYou need a .env file with your credentials to run theExamplesJupyter notebook.API_CLIENT_ID=
API_CLIENT_SECRET=
API_USERNAME=
API_PASSWORD=Install Jupyter notebookExamplesdependenciesconda install --file requirements-notebook.txtorpip install -r requirements-notebook.txtSet up the Jupyter Notebook kernelpython -m ipykernel install --user --name demoRun the Jupyter notebookRun the package inside a Docker containerBuild the image locally :docker build --tag geosyspy .Run it :docker run -it --env-file .env geosyspyor, without .env file :docker run -it -e API_CLIENT_ID='...' -e API_CLIENT_SECRET='...' -e API_USERNAME='...' -e API_PASSWORD='...' geosyspyThen :>>>fromgeosyspyimportGeosys>>>fromgeosyspy.utils.constantsimport*>>>importos>>>client=Geosys(os.getenv('API_CLIENT_ID'),os.getenv('API_CLIENT_SECRET'),os.getenv('API_USERNAME'),os.getenv('API_PASSWORD'),Env.PREPROD,Region.NA)(back to top)UsageInitialize client:fromgeosyspyimportGeosysfromgeosyspy.utils.constantsimport*client=Geosys("API_CLIENT_ID","API_CLIENT_SECRET","API_USERNAME","API_PASSWORD",Env.PREPROD,Region.NA)Query data:polygon="POLYGON((...))"today=dt.date.today()year_ago=dt.date.today()+relativedelta(months=-12)dataframe=client.get_time_series(polygon,year_ago,today,collection=SatelliteImageryCollection.MODIS,indicators=["NDVI"])Use Geosyspy loggerimportlogginggeosys_logger=logging.getLogger('geosyspy')geosys_logger.setLevel(logging.DEBUG)See the Jupyter notebookExamplesfor a working example.(back to top)ResourcesThe following links will provide access to more information:EarthDaily agro developer portalPypi package(back to top)Support developmentIf this project has been useful, that it helped you or your business to save precious time, don't hesitate to give it a star.(back to top)LicenseDistributed under theGPL 3.0 License.(back to top)ContactFor any additonal information, pleaseemail us.(back to top)Copyrights© 2022 Geosys Holdings ULC, an Antarctica Capital portfolio company | All Rights Reserved.(back to top)