xproj


Namexproj JSON
Version 0.0.1 PyPI version JSON
download
home_pageNone
SummaryXarray extension for projections and coordinate reference systems
upload_time2024-12-18 13:53:11
maintainerxproj contributors
docs_urlNone
authorBenoît Bovy, Scott Henderson
requires_python>=3.10
licenseApache-2.0
keywords xarray gis crs proj
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![Tests](https://github.com/benbovy/xproj/actions/workflows/test.yml/badge.svg?branch=main&event=push)](https://github.com/benbovy/xproj/actions/test.yml?query=branch%3Amain+event%3Apush)
[![Coverage](https://codecov.io/gh/benbovy/xproj/branch/main/graph/badge.svg)](https://app.codecov.io/gh/benbovy/xproj?branch=main)

# XProj

Xarray extension for projections and coordinate reference systems.

*Current development status: experimental, proof-of-concept.*

## Usage

See the notebooks in the "examples" folder.

- [Demo](https://nbviewer.org/github/benbovy/xproj/blob/main/examples/demo.ipynb)
- [Interoperability with 3rd-party Xarray extensions](https://nbviewer.org/github/benbovy/xproj/blob/main/examples/xarray_geo_extensions.ipynb)

## Goals

- Provide to Xarray geospatial extensions a set of convenient tools for dealing
  with coordinate reference systems (CRSs) in a uniform & flexible way.
- Prevent duplicating CRS-specific logic (e.g., parse, reset, formatting,
  checking equality, etc.) in each extension ; put it together into one reusable
  package instead (i.e., a lightweight Xarray extension mostly built on top of
  [pyproj](https://pyproj4.github.io/pyproj/stable/)).
- Provide a common end-user API for handling CRS via `.proj` Xarray accessors.
- Leverage recent Xarray features such as custom indexes. Easily compare,
  combine or align Xarray datasets or dataarrays based on their CRS (via
  `CRSIndex`).
- Consolidate the Xarray geospatial ecosystem (towards better interoperability).

## Non-Goals

- Being strongly opinionated on how CRS and other information like spatial
  dimensions should be represented as metadata in Xarray objects and/or in
  Xarray supported I/O formats. This is left to other Xarray extensions and
  format specifications (e.g., GeoZarr, GeoTIFF, GeoParquet, etc.).
- Provide a common set of tools (implementations) for re-projecting data. This
  highly depends on the data type (i.e., raster, vector, etc.) or application
  and it is best handled by other Xarray extensions. We also see XProj
  potentially as a lightweight dependency common to those other extensions so we
  want to restrict XProj's dependencies to the minimum (i.e., Xarray and
  PyProj).

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "xproj",
    "maintainer": "xproj contributors",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "xarray, GIS, CRS, proj",
    "author": "Beno\u00eet Bovy, Scott Henderson",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/43/30/2171856d1a6c4be448edbab112402062b21152f76fd023c0561c67615977/xproj-0.0.1.tar.gz",
    "platform": null,
    "description": "[![Tests](https://github.com/benbovy/xproj/actions/workflows/test.yml/badge.svg?branch=main&event=push)](https://github.com/benbovy/xproj/actions/test.yml?query=branch%3Amain+event%3Apush)\n[![Coverage](https://codecov.io/gh/benbovy/xproj/branch/main/graph/badge.svg)](https://app.codecov.io/gh/benbovy/xproj?branch=main)\n\n# XProj\n\nXarray extension for projections and coordinate reference systems.\n\n*Current development status: experimental, proof-of-concept.*\n\n## Usage\n\nSee the notebooks in the \"examples\" folder.\n\n- [Demo](https://nbviewer.org/github/benbovy/xproj/blob/main/examples/demo.ipynb)\n- [Interoperability with 3rd-party Xarray extensions](https://nbviewer.org/github/benbovy/xproj/blob/main/examples/xarray_geo_extensions.ipynb)\n\n## Goals\n\n- Provide to Xarray geospatial extensions a set of convenient tools for dealing\n  with coordinate reference systems (CRSs) in a uniform & flexible way.\n- Prevent duplicating CRS-specific logic (e.g., parse, reset, formatting,\n  checking equality, etc.) in each extension ; put it together into one reusable\n  package instead (i.e., a lightweight Xarray extension mostly built on top of\n  [pyproj](https://pyproj4.github.io/pyproj/stable/)).\n- Provide a common end-user API for handling CRS via `.proj` Xarray accessors.\n- Leverage recent Xarray features such as custom indexes. Easily compare,\n  combine or align Xarray datasets or dataarrays based on their CRS (via\n  `CRSIndex`).\n- Consolidate the Xarray geospatial ecosystem (towards better interoperability).\n\n## Non-Goals\n\n- Being strongly opinionated on how CRS and other information like spatial\n  dimensions should be represented as metadata in Xarray objects and/or in\n  Xarray supported I/O formats. This is left to other Xarray extensions and\n  format specifications (e.g., GeoZarr, GeoTIFF, GeoParquet, etc.).\n- Provide a common set of tools (implementations) for re-projecting data. This\n  highly depends on the data type (i.e., raster, vector, etc.) or application\n  and it is best handled by other Xarray extensions. We also see XProj\n  potentially as a lightweight dependency common to those other extensions so we\n  want to restrict XProj's dependencies to the minimum (i.e., Xarray and\n  PyProj).\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Xarray extension for projections and coordinate reference systems",
    "version": "0.0.1",
    "project_urls": {
        "Documentation": "https://xproj.readthedocs.io",
        "Repository": "https://github.com/benbovy/xproj"
    },
    "split_keywords": [
        "xarray",
        " gis",
        " crs",
        " proj"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "be7db41d91c786742ef5f5a3bde89183990b0d39c34b50f4e055109d06958e2f",
                "md5": "62366abf5d227cc6e1db02c4849ea233",
                "sha256": "c179a565c039a4faf0c8064a9585830c6b4ba009ba5e61e7532d7384a13a03c8"
            },
            "downloads": -1,
            "filename": "xproj-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "62366abf5d227cc6e1db02c4849ea233",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 17095,
            "upload_time": "2024-12-18T13:53:09",
            "upload_time_iso_8601": "2024-12-18T13:53:09.587338Z",
            "url": "https://files.pythonhosted.org/packages/be/7d/b41d91c786742ef5f5a3bde89183990b0d39c34b50f4e055109d06958e2f/xproj-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "43302171856d1a6c4be448edbab112402062b21152f76fd023c0561c67615977",
                "md5": "fe5465856a77a4c3dac597ffde98b579",
                "sha256": "07f41912fdbaa75c39df64777e68518918c962ca52581bc13a1e911c391e64da"
            },
            "downloads": -1,
            "filename": "xproj-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "fe5465856a77a4c3dac597ffde98b579",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 42010,
            "upload_time": "2024-12-18T13:53:11",
            "upload_time_iso_8601": "2024-12-18T13:53:11.853843Z",
            "url": "https://files.pythonhosted.org/packages/43/30/2171856d1a6c4be448edbab112402062b21152f76fd023c0561c67615977/xproj-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-18 13:53:11",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "benbovy",
    "github_project": "xproj",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "xproj"
}
        
Elapsed time: 0.67497s