lets_plot.geo_data.geocode#
- lets_plot.geo_data.geocode(level=None, names=None, countries=None, states=None, counties=None, scope=None) NamesGeocoder #
Create a NamesGeocoder. Allow to refine ambiguous request with where() method, scope that limits area of geocoding or with parents.
- Parameters:
- level{‘country’, ‘state’, ‘county’, ‘city’}
The level of administrative division. Autodetection by default.
- nameslist or str
Names of objects to be geocoded. For ‘state’ level: ‘US-48’ returns continental part of United States (48 states) in a compact form.
- countrieslist
Parent countries. Should have same size as names. Can contain strings or Geocoder objects.
- stateslist
Parent states. Should have same size as names. Can contain strings or Geocoder objects.
- countieslist
Parent counties. Should have same size as names. Can contain strings or Geocoder objects.
- scopestr or Geocoder
Limits area of geocoding. If parent country is set then error will be generated. If type is a string - geoobject should have geocoded scope in parents. If type is a Geocoder - geoobject should have geocoded scope in parents. Scope should contain only one entry.
- Returns:
- NamesGeocoder
Geocoder object specification.
Examples
1from IPython.display import display 2from lets_plot import * 3from lets_plot.geo_data import * 4LetsPlot.setup_html() 5states = geocode('state').scope('Italy').get_boundaries(6) 6display(states.head()) 7ggplot() + geom_map(data=states)
The geodata is provided by © OpenStreetMap contributors and is made available here under the Open Database License (ODbL).
state found name geometry 0 Sicily Sicily MULTIPOLYGON (((11.93996 36.83784, 12.01368 36... 1 Molise Molise MULTIPOLYGON (((13.94101 41.68797, 14.01883 41... 2 Tuscany Tuscany MULTIPOLYGON (((9.81009 43.00208, 9.79309 43.0... 3 Umbria Umbria MULTIPOLYGON (((11.95935 42.86868, 11.93497 42... 4 Emilia-Romagna Emilia-Romagna MULTIPOLYGON (((9.20032 44.68640, 9.24248 44.6... 1from IPython.display import display 2from lets_plot import * 3from lets_plot.geo_data import * 4LetsPlot.setup_html() 5states = geocode(level='state', scope='US').get_geocodes() 6display(states.head()) 7names = ['York'] * len(states.state) 8cities = geocode(names=names, states=states.state).ignore_not_found().get_centroids() 9display(cities.head()) 10ggplot() + \ 11 geom_livemap() + \ 12 geom_point(data=cities, tooltips=layer_tooltips().line('@{found name}'))
id state found name centroid position limit 0 60759 Vermont Vermont [-72.772353529363, 43.8718488067389] [-73.4377402067184, 42.7269606292248, -71.4653... [-73.4377402067184, 42.7269606292248, -71.4653... 1 61315 Massachusetts Massachusetts [-72.0964509339039, 42.1913791447878] [-73.5082098841667, 41.4945808053017, -69.9292... [-73.5082098841667, 41.2393619120121, -69.9292... 2 61320 New York New York [-76.0912327538441, 42.8993669897318] [-79.7619438171387, 40.7823456823826, -73.2414... [-79.7619438171387, 40.4960802197456, -71.8561... 3 63512 Maine Maine [-69.1608471741827, 45.2623642981052] [-71.0841688513756, 43.0649779736996, -66.9498... [-71.0841688513756, 42.9808665812016, -66.9498... 4 67213 New Hampshire New Hampshire [-71.5517876605831, 44.0015134960413] [-72.5572353601456, 42.6972283422947, -70.7018... [-72.5572353601456, 42.6972283422947, -70.7018... city found name state geometry 0 York New York New York POINT (-73.86737 40.68470) 1 York York Maine POINT (-70.67917 43.17851) 2 York Little York Illinois POINT (-90.74261 41.01002) 3 York York Nebraska POINT (-97.59012 40.86006) 4 York York North Dakota POINT (-99.57356 48.31308)