This example illustrates how to calculate and visualize isochrones using Location Data Services.
Note: You'll need CARTO Account credentials to reproduce this example.
In [1]:
from cartoframes.auth import set_default_credentials
set_default_credentials('creds.json')
In [2]:
from geopandas import GeoDataFrame, points_from_xy
gdf = GeoDataFrame([
['Calle Serrano 15', -3.68831, 40.42478],
['Calle de San Pedro 21', -3.69488, 40.41089],
['Calle Gran Vía 46', -3.70588, 40.42049],
['Paseo de la Castellana 200', -3.68898, 40.46239],
['Calle Ntra. Sra. del Carmen 7', -3.70221, 40.45840],
['Calle de San Germán 12', -3.69286, 40.45651],
['Calle de Bravo Murillo 377', -3.69093, 40.46575],
],
columns=['address', 'lng', 'lat']
)
gdf.set_geometry(points_from_xy(gdf['lng'], gdf['lat']), inplace=True)
In [3]:
from cartoframes.viz import Layer
Layer(gdf)
Out[3]:
In [4]:
from cartoframes.data.services import Isolines
iso_service = Isolines()
isochrones_gdf, isochrones_metadata = iso_service.isochrones(gdf, [100, 200, 300], mode='walk', exclusive=True)
In [5]:
isochrones_gdf.head(5)
Out[5]:
In [6]:
isochrones_metadata
Out[6]:
In [9]:
from cartoframes.viz import Map, Layer, basic_style
Map([
Layer(isochrones_gdf, basic_style(color='green', opacity='0.3')),
Layer(gdf, basic_style(size=3))
])
Out[9]: