In [1]:
import emapy as epy
import sys;
import pandas as pd

In [6]:
locationAreaBoundingBox = (41.3248770036,2.0520401001,41.4829908452,2.2813796997)

barris = epy.getDatabase('barris', 'geojson','../data/raw/barris.geojson', '',True, 0, 1, 'cartodb_id')  
allData = epy.getDatabaseFromOSM('restaurantes', 'amenity', False, True, locationAreaBoundingBox, 'bar')
numJumps = 2

T = [[barri, 
      data['properties'], 
      data['geometry'], 
      epy.getLessDistanceInKmBtwnCoordAndInfoStructureWithJumps(
        data["geometry"][0],
        data["geometry"][1],
        allData,
        numJumps, 
        True)[0]] 
     for barri in barris[1] for data in allData 
     if epy.coordInsidePolygon(data["geometry"][0], 
                               data["geometry"][1], 
                               epy.transformArrYXToXY(barris[1][barri]))]

In [7]:
df = pd.DataFrame({'id' : [], 'data': []})

allId = dict()
allValue = dict()

for data in T:
    key = int(float(data[0]))
    if key in allId:
        allId[key] += 1
        allValue[key] += data[3]
    else:
        allId[key] = 1
        allValue[key] = data[3]

print allId     
        
for idBarri in barris[1]:
    key = int(float(idBarri))
    if key in allId:
        row = [key, allValue[key] * 1.0 / allId[key]]  
        df.loc[len(df), ['id', 'data']] = row  
    else:
        df.loc[len(df), ['id', 'data']] = [key,0]

In [8]:
map = epy.mapCreation(41.388790,2.158990)
epy.mapChoropleth(map, 
                 '../data/raw/barris.geojson',
                 'feature.properties.cartodb_id',
                 df,
                 'id',
                 'data',
                 'YlGn',
                 0.7,
                 0.3,
                 [],
                 'bars / barri')

In [9]:
epy.mapSave(map, '../reports/maps/mapOfBarsxBarri.html')
map


Out[9]:

In [ ]:


In [ ]:


In [ ]:


In [ ]:


In [ ]:


In [ ]: