{ "info": { "author": "Andrei Lapets", "author_email": "a@lapets.io", "bugtrack_url": null, "classifiers": [], "description": "=====\ngeoql\n=====\n\nLibrary for performing queries and transformations on GeoJSON data (with emphasis on support for abstract graph representations).\n\nPackage Installation and Usage\n------------------------------\n\nThe package is available on PyPI::\n\n python -m pip install geoql\n\nThe library can be imported in the usual ways::\n\n import geoql\n from geoql import geoql\n\nExamples\n--------\nAn example of usage is provided below::\n\n import geojson\n from geoql import geoql\n import geoleaflet\n import requests\n \n url = 'https://raw.githubusercontent.com/Data-Mechanics/geoql/master/examples/'\n \n # Boston ZIP Codes regions.\n z = geoql.loads(requests.get(url + 'example_zips.geojson').text, encoding=\"latin-1\")\n \n # Extract of street data.\n g = geoql.loads(requests.get(url + 'example_extract.geojson').text, encoding=\"latin-1\")\n \n g = g.properties_null_remove()\\\n .tags_parse_str_to_dict()\\\n .keep_by_property({\"highway\": {\"$in\": [\"residential\", \"secondary\", \"tertiary\"]}})\n g = g.keep_within_radius((42.3551, -71.0656), 0.75, 'miles') # 0.75 miles from Boston Common.\n g = g.keep_that_intersect(z) # Only those entries found in a Boston ZIP Code regions.\n g = g.node_edge_graph() # Converted into a graph with nodes and edges.\n g.dump(open('example_extract.geojson', 'w'))\n open('leaflet.html', 'w').write(geoleaflet.html(g)) # Create visualization.\n\nAn alternative example of usage is provided below (the below usage is deprecated but will remain supported)::\n\n import geojson\n import geoql\n import geoleaflet\n import requests\n \n url = 'https://raw.githubusercontent.com/Data-Mechanics/geoql/master/examples/'\n \n # Boston ZIP Codes regions.\n z = geojson.loads(requests.get(url + 'example_zips.geojson').text, encoding=\"latin-1\")\n \n # Extract of street data.\n g = geojson.loads(requests.get(url + 'example_extract.geojson').text, encoding=\"latin-1\")\n \n g = geoql.features_properties_null_remove(g)\n g = geoql.features_tags_parse_str_to_dict(g)\n g = geoql.features_keep_by_property(g, {\"highway\": {\"$in\": [\"residential\", \"secondary\", \"tertiary\"]}})\n g = geoql.features_keep_within_radius(g, (42.3551, -71.0656), 0.75, 'miles') # Within 0.75 of Boston Common.\n g = geoql.features_keep_intersecting_features(g, z) # Only those entries found in a Boston ZIP Code regions.\n g = geoql.features_node_edge_graph(g) # Converted into a graph with nodes and edges.\n open('example_extract.geojson', 'w').write(geojson.dumps(g))\n open('leaflet.html', 'w').write(geoleaflet.html(g)) # Create visualization.\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/Data-Mechanics/geoql", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "geoql", "package_url": "https://pypi.org/project/geoql/", "platform": "", "project_url": "https://pypi.org/project/geoql/", "project_urls": { "Homepage": "https://github.com/Data-Mechanics/geoql" }, "release_url": "https://pypi.org/project/geoql/0.0.8.0/", "requires_dist": null, "requires_python": "", "summary": "Library for performing queries and transformations on GeoJSON data (with emphasis on support for abstract graph representations).", "version": "0.0.8.0" }, "last_serial": 3026974, "releases": { "0.0.1.0": [ { "comment_text": "", "digests": { "md5": "a8659f07e98c461d72cfbccd539edf16", "sha256": "a7d8a205fd969189b6f723257937ae5fd222044174455b1ab1478901afa5881e" }, "downloads": -1, "filename": "geoql-0.0.1.0.zip", "has_sig": false, "md5_digest": "a8659f07e98c461d72cfbccd539edf16", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4381, "upload_time": "2017-03-20T06:07:15", "url": "https://files.pythonhosted.org/packages/5f/e0/f5e79356a25a9a4bc13c08d1577f2eb40bbdfe9df57c849ef088f33f4d28/geoql-0.0.1.0.zip" } ], "0.0.2.0": [ { "comment_text": "", "digests": { "md5": "43beadaf4b6fe26c5984b3ccf7c4bb2c", "sha256": "1c496ffd46d634ba07c7258e60c8204c020d9b12f4ec9f9e6bb0eb9df8fb219a" }, "downloads": -1, "filename": "geoql-0.0.2.0.zip", "has_sig": false, "md5_digest": "43beadaf4b6fe26c5984b3ccf7c4bb2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4452, "upload_time": "2017-03-20T06:10:48", "url": "https://files.pythonhosted.org/packages/9c/1e/022d443d25974b7cc3cfd42736fbd318e826d10556d0c0cda9eba6af55b3/geoql-0.0.2.0.zip" } ], "0.0.3.0": [ { "comment_text": "", "digests": { "md5": "6359e5c1fdd3d5c41fea68e4c478abf2", "sha256": "35eebd707a9a93ee4cfa19bbd73c7d93880fc581189a1e74f8d3949f3af28853" }, "downloads": -1, "filename": "geoql-0.0.3.0.zip", "has_sig": false, "md5_digest": "6359e5c1fdd3d5c41fea68e4c478abf2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4452, "upload_time": "2017-03-20T06:12:41", "url": "https://files.pythonhosted.org/packages/ec/28/653ded82b12a479faf0281c93e6bee2015f2ff7579b986d90eaab3766df4/geoql-0.0.3.0.zip" } ], "0.0.4.0": [ { "comment_text": "", "digests": { "md5": "9b54069ec818e2817e1b6b93394dda9b", "sha256": "895f651d2157605dff91bc3217b833db8189944a124ef7df0b4c47e87695d00b" }, "downloads": -1, "filename": "geoql-0.0.4.0.tar.gz", "has_sig": false, "md5_digest": "9b54069ec818e2817e1b6b93394dda9b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2952, "upload_time": "2017-04-02T21:10:00", "url": "https://files.pythonhosted.org/packages/d6/cc/8571e978741c85cc457784dfbc37d351b6010b20143c135948e220d3eb41/geoql-0.0.4.0.tar.gz" } ], "0.0.5.0": [ { "comment_text": "", "digests": { "md5": "615a242034b93635bcd7a5ce6242fa82", "sha256": "87c818c30bd712828a64ca46c0ab84c107021dead356d9a6ad33d0508748c3ea" }, "downloads": -1, "filename": "geoql-0.0.5.0.tar.gz", "has_sig": false, "md5_digest": "615a242034b93635bcd7a5ce6242fa82", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3153, "upload_time": "2017-04-04T17:17:03", "url": "https://files.pythonhosted.org/packages/9d/86/93fbca0c798d868bfdbaf6dabdcfff0186ef2374df77f703ecc921b7551e/geoql-0.0.5.0.tar.gz" } ], "0.0.7.0": [ { "comment_text": "", "digests": { "md5": "4a5ec05e08e7d5ab8db3a37c4f7ce092", "sha256": "91125c9fd43a4ea93a8291e37fc7425cbb059fe714061ca091ab30b7bed658c8" }, "downloads": -1, "filename": "geoql-0.0.7.0.tar.gz", "has_sig": false, "md5_digest": "4a5ec05e08e7d5ab8db3a37c4f7ce092", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4336, "upload_time": "2017-04-09T04:02:54", "url": "https://files.pythonhosted.org/packages/c3/6f/5a08fa7e64e648adb4a37d037f9d2d33f58275d733f8eaf051dca80e386e/geoql-0.0.7.0.tar.gz" } ], "0.0.8.0": [ { "comment_text": "", "digests": { "md5": "ed4365547dc7ad3ba1b64dcaae1b9442", "sha256": "359dc39ce8237011dd718e2b19af0d8681a723d969a468705d56fcbb2b7d2230" }, "downloads": -1, "filename": "geoql-0.0.8.0.tar.gz", "has_sig": false, "md5_digest": "ed4365547dc7ad3ba1b64dcaae1b9442", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4222, "upload_time": "2017-07-16T18:08:27", "url": "https://files.pythonhosted.org/packages/cc/25/e7852ec5d9cf6e098e34ee06b37957a57bea51e11be43b535b1499031453/geoql-0.0.8.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ed4365547dc7ad3ba1b64dcaae1b9442", "sha256": "359dc39ce8237011dd718e2b19af0d8681a723d969a468705d56fcbb2b7d2230" }, "downloads": -1, "filename": "geoql-0.0.8.0.tar.gz", "has_sig": false, "md5_digest": "ed4365547dc7ad3ba1b64dcaae1b9442", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4222, "upload_time": "2017-07-16T18:08:27", "url": "https://files.pythonhosted.org/packages/cc/25/e7852ec5d9cf6e098e34ee06b37957a57bea51e11be43b535b1499031453/geoql-0.0.8.0.tar.gz" } ] }