A simple geojson provider for faker
Project description
GeoFactory
This is a faker provider that generates fake geojson data. It simulates all the different types of features and geometries in the geojson specification. There is also a test suite for the class and it's methods run with pytest.
Setup
Install from source:
pip install git+https://github.com/scook12/geofactory.git@master
OR
pipenv install git+https://github.com/scook12/geofactory.git@master#egg=geofactory
Install with pip:
pip install geofactory-scook
Use
GeoFactory is just an additional community provider for geojson.
An example might look like this:
from faker import Faker
from geofactory import GeoFactory
factory = Faker()
factory.add_provider(GeoFactory)
pt = factory.point()
pt
is now a valid geojson Point feature. All methods follow this pattern.
Methods
lnglat
Returns a given number of random longitude/latitude pairs.
point
Returns a single geojson point object with random coordinates
multipoint
Returns a multipoint geojson object with a random number of random points :param: count_limit - determines the maxiumum number of points generated
linestring
Returns a linestring geojson object with a random number of nodes :param: node_limit - determines the maxiumum number of nodes generated
multilinestring
Returns a multilinestring with a random number of segments with a random number of nodes :param: node_limit - determines maximum number of nodes for a given linestring :param: count_limit - determines the maximum number of line segments generated
polygon
Returns a randomly arranged polygon with a specific number of nodes :param: node_limit - determines how many nodes will be in the return polygon
multypolygon
Returns a geojson multipolygon with a specific number of randomly arranged polygons :param: count_limit - determines how many polygons will be created
geometry_collection
Returns a specific number of random geojson geometries as a collection :param: count_limit - determines how many geometries will be generated
feature
Returns a random geojson feature object
feature_collection
Returns a specific number of random features in a feature collection object :param: count_limit - determines how many features will be generated
to_file
Writes geojson object to file :param: path - full path and filename for data to be written to :param: data - valid geojson object to dump in path
Contribute
Open an issue, fork the repo, submit a PR. This is a tiny side project I built to be used while developing an app that ingested geojson, so there aren't a ton of guidelines.
If you make changes to existing methods, be sure to run pytest
to make sure they all
are still passing. If you write a new method or class, please include some basic pytest
cases.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for geofactory-0.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18598988eb8de31ee17597bab670bad0ad3b89cba33f5dfa22f2c1194fe52d1e |
|
MD5 | 2e887caf35d7cf5baf9f9ba6188da400 |
|
BLAKE2b-256 | 7ef66637d0e0a4b9c17b8cf34e8892c63e8cfb60b39bcfffd99acc8cce783a0e |