{ "info": { "author": "Vladimir Agafonkin", "author_email": "vladimir@mapbox.com", "bugtrack_url": null, "classifiers": [], "description": "Geobuf\n------\n\nGeobuf is a compact binary geospatial format for *lossless* compression\nof GeoJSON and TopoJSON data.\n\n|Build Status| |Coverage Status|\n\n**Note well**: this project is no longer actively developed. Issues and\npull requests will be attended to when possible, but delays should be\nexpected.\n\nAdvantages over using GeoJSON and TopoJSON directly (in this `revised\nversion `__):\n\n- **Very compact**: typically makes GeoJSON 6-8 times smaller and\n TopoJSON 2-3 times smaller.\n- Smaller even when comparing gzipped sizes: 2-2.5x compression for\n GeoJSON and 20-30% for TopoJSON.\n- Easy **incremental parsing** \u2014 you can get features out as you read\n them, without the need to build in-memory representation of the whole\n data.\n- **Partial reads** \u2014 you can read only the parts you actually need,\n skipping the rest.\n- Trivial **concatenation**: you can concatenate many Geobuf files\n together and they will form a valid combined Geobuf file.\n- Potentially **faster encoding/decoding** compared to native JSON\n implementations (i.e. in Web browsers).\n- Can still accommodate any GeoJSON and TopoJSON data, including\n extensions with arbitrary properties.\n\nThink of this as an attempt to design a simple, modern Shapefile\nsuccessor that works seamlessly with GeoJSON and TopoJSON.\n\nUnlike `Mapbox Vector\nTiles `__, it aims for\n*lossless* compression of datasets \u2014 without tiling, projecting\ncoordinates, flattening geometries or stripping properties.\n\npygeobuf\n^^^^^^^^\n\nThis repository is the first encoding/decoding implementation of this\nnew major version of `Geobuf `__ (in\nPython). It serves as a prototyping playground, with faster\nimplementations in JS and C++ coming in future.\n\nSample compression sizes\n^^^^^^^^^^^^^^^^^^^^^^^^\n\n::\n\n | normal | gzipped\n\n+---------------------+-------------+------------+\n| us-zips.json | 101.85 MB | 26.67 MB |\n+---------------------+-------------+------------+\n| us-zips.pbf | 12.24 MB | 10.48 MB |\n+---------------------+-------------+------------+\n| us-zips.topo.json | 15.02 MB | 3.19 MB |\n+---------------------+-------------+------------+\n| us-zips.topo.pbf | 4.85 MB | 2.72 MB |\n+---------------------+-------------+------------+\n| idaho.json | 10.92 MB | 2.57 MB |\n+---------------------+-------------+------------+\n| idaho.pbf | 1.37 MB | 1.17 MB |\n+---------------------+-------------+------------+\n| idaho.topo.json | 1.9 MB | 612 KB |\n+---------------------+-------------+------------+\n| idaho.topo.pbf | 567 KB | 479 KB |\n+---------------------+-------------+------------+\n\nUsage\n~~~~~\n\nCommand line:\n\n.. code:: bash\n\n geobuf encode < example.json > example.pbf\n geobuf decode < example.pbf > example.pbf.json\n\nAs a module:\n\n.. code:: python\n\n import geobuf\n\n pbf = geobuf.encode(my_json) # GeoJSON or TopoJSON -> Geobuf string\n my_json = geobuf.decode(pbf) # Geobuf string -> GeoJSON or TopoJSON\n\nThe ``encode`` function accepts a dict-like object, for example the\nresult of ``json.loads(json_str)``.\n\nBoth ``encode.py`` and ``geobuf.encode`` accept two optional arguments:\n\n- **precision** \u2014 max number of digits after the decimal point in\n coordinates, ``6`` by default.\n- **dimensions** \u2014 number of dimensions in coordinates, ``2`` by\n default.\n\nTests\n~~~~~\n\n.. code:: bash\n\n py.test -v\n\nThe tests run through all ``.json`` files in the ``fixtures`` directory,\ncomparing each original GeoJSON with an encoded/decoded one.\n\n.. |Build Status| image:: https://travis-ci.org/mapbox/pygeobuf.svg?branch=master\n :target: https://travis-ci.org/mapbox/pygeobuf\n.. |Coverage Status| image:: https://coveralls.io/repos/mapbox/pygeobuf/badge.svg?branch=master\n :target: https://coveralls.io/r/mapbox/pygeobuf?branch=master\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mapbox/pygeobuf", "keywords": "data gis geojson topojson protobuf", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "geobuf", "package_url": "https://pypi.org/project/geobuf/", "platform": "", "project_url": "https://pypi.org/project/geobuf/", "project_urls": { "Homepage": "https://github.com/mapbox/pygeobuf" }, "release_url": "https://pypi.org/project/geobuf/1.1.1/", "requires_dist": [ "click", "protobuf", "six", "pytest; extra == 'test'" ], "requires_python": "", "summary": "Geobuf is a compact binary geospatial format for lossless compression of GeoJSON and TopoJSON data.", "version": "1.1.1" }, "last_serial": 3260833, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "17f3ef49ef86e25117a63c7273c52381", "sha256": "e5eb83ed0ba3dc119c0868040a870c8aa56796fa126a8e5772522b7120215315" }, "downloads": -1, "filename": "geobuf-1.0.0-py2-none-any.whl", "has_sig": false, "md5_digest": "17f3ef49ef86e25117a63c7273c52381", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 13674, "upload_time": "2015-03-21T00:37:24", "url": "https://files.pythonhosted.org/packages/c6/4b/6f01607b92c496765e360fe46d8ca94c65d813720478464eefd934ddc9e6/geobuf-1.0.0-py2-none-any.whl" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "75b30ecff70c1d40e86cb7b4052be31c", "sha256": "3793c9a819ee8cd17edf2172e2045b1ebb5c40cc2d04722234819f1c1d2fd641" }, "downloads": -1, "filename": "geobuf-1.1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "75b30ecff70c1d40e86cb7b4052be31c", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 14065, "upload_time": "2016-02-25T18:03:18", "url": "https://files.pythonhosted.org/packages/71/c9/83669a2fa813b711306aeaa1a0ccec771e0743f10e4f8dc393a1ba7800e0/geobuf-1.1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9fc67bfdbc6e21125dcd3c372a5093bc", "sha256": "28351e2029f5100fa146b9a1af0a4a7bf5a426760d2bb078b4362fd94eb03689" }, "downloads": -1, "filename": "geobuf-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "9fc67bfdbc6e21125dcd3c372a5093bc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 14064, "upload_time": "2016-02-25T18:03:26", "url": "https://files.pythonhosted.org/packages/0a/56/7820f052a4476f1992c7705cf377f5163e65028d4df85b7e17d5add93eed/geobuf-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bd64b34c8ba86d0c8498e2bd58508e22", "sha256": "daa87156272d8045825903119e1a23eeef32d6158db730c7647cf5f4c8700bf6" }, "downloads": -1, "filename": "geobuf-1.1.0.tar.gz", "has_sig": false, "md5_digest": "bd64b34c8ba86d0c8498e2bd58508e22", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54167, "upload_time": "2016-02-25T18:03:32", "url": "https://files.pythonhosted.org/packages/d9/34/76d1199c20e1e1eec7534f98d09b965f79025ee889dc45226890716ea283/geobuf-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "6f594380c953ce771889cfd20765a2f4", "sha256": "e6298e0608b2fcb4fc23530760fbe03862449f44ac5f5065aeb9304ce3d23299" }, "downloads": -1, "filename": "geobuf-1.1.1-py2-none-any.whl", "has_sig": false, "md5_digest": "6f594380c953ce771889cfd20765a2f4", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 13883, "upload_time": "2017-10-06T17:52:14", "url": "https://files.pythonhosted.org/packages/4b/95/8cb3915dabf195439dc050ad5e7526fe28c20f08d8d068a706b8e6356659/geobuf-1.1.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb63873b143994b326ca885b77f9857c", "sha256": "a6b81a0a09505996ee23b6caa303cde8c0d2f75d31826241a452a19bf675f8c2" }, "downloads": -1, "filename": "geobuf-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "cb63873b143994b326ca885b77f9857c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13883, "upload_time": "2017-10-06T17:51:31", "url": "https://files.pythonhosted.org/packages/77/8a/264fc3e9d9dd553f813cf578f15e901148a06bc607f4f99c2e54d7ed533f/geobuf-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b7110d8fa197d936daa59842a4bc2170", "sha256": "9c645a2ef7c0a8679b1088981e286357823a2291322de6d0b9ee523212933e9a" }, "downloads": -1, "filename": "geobuf-1.1.1.tar.gz", "has_sig": false, "md5_digest": "b7110d8fa197d936daa59842a4bc2170", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56501, "upload_time": "2017-10-06T17:51:34", "url": "https://files.pythonhosted.org/packages/af/f0/7d9f7d7b2b45dbf9ef6addf00bdd5261045be6e5a37a005e9929c08de86f/geobuf-1.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6f594380c953ce771889cfd20765a2f4", "sha256": "e6298e0608b2fcb4fc23530760fbe03862449f44ac5f5065aeb9304ce3d23299" }, "downloads": -1, "filename": "geobuf-1.1.1-py2-none-any.whl", "has_sig": false, "md5_digest": "6f594380c953ce771889cfd20765a2f4", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 13883, "upload_time": "2017-10-06T17:52:14", "url": "https://files.pythonhosted.org/packages/4b/95/8cb3915dabf195439dc050ad5e7526fe28c20f08d8d068a706b8e6356659/geobuf-1.1.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb63873b143994b326ca885b77f9857c", "sha256": "a6b81a0a09505996ee23b6caa303cde8c0d2f75d31826241a452a19bf675f8c2" }, "downloads": -1, "filename": "geobuf-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "cb63873b143994b326ca885b77f9857c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13883, "upload_time": "2017-10-06T17:51:31", "url": "https://files.pythonhosted.org/packages/77/8a/264fc3e9d9dd553f813cf578f15e901148a06bc607f4f99c2e54d7ed533f/geobuf-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b7110d8fa197d936daa59842a4bc2170", "sha256": "9c645a2ef7c0a8679b1088981e286357823a2291322de6d0b9ee523212933e9a" }, "downloads": -1, "filename": "geobuf-1.1.1.tar.gz", "has_sig": false, "md5_digest": "b7110d8fa197d936daa59842a4bc2170", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56501, "upload_time": "2017-10-06T17:51:34", "url": "https://files.pythonhosted.org/packages/af/f0/7d9f7d7b2b45dbf9ef6addf00bdd5261045be6e5a37a005e9929c08de86f/geobuf-1.1.1.tar.gz" } ] }