In [81]:
import folium
import numpy as np
from IPython.display import IFrame

In [122]:
import json
with open('/Users/ramz.sivagurunathan/hacks/hackathon/code/parramatta_route_path.json') as fp:
    route_data = json.load(fp)
with open('/Users/ramz.sivagurunathan/hacks/hackathon/code/passenger_start.json') as fp:
    passenger_data = json.load(fp)

In [132]:
import random
import math
map_osm = folium.Map(location=[-33.8176967,151.0032968],
                    zoom_start=13)
empdata = pd.read_csv('/Users/ramz.sivagurunathan/hacks/hackathon/datasets/curated/empforecast.csv')
map_osm.geo_json(geo_path='test.geojson', line_color='blue', data=empdata, columns=['TZ_CODE11', 'Employment'],
             key_on='feature.properties.TZ_CODE11',
             fill_color='YlGn', fill_opacity=0.7, line_opacity=0.2,
             legend_name='Employment')
colors_list = ["red",'blue','black']
for route_id, info in route_data.iteritems():
    map_osm.line(locations=info, line_weight=2, line_color=random.choice(colors_list), popup=route_id)
    
for elem in passenger_data:
    if math.isnan(elem['lat']):
        continue
    map_osm.circle_marker(location=[elem['lat'], elem['long']], radius=10, popup=str(elem['count']))
    
map_osm.create_map(path='osm.html')

In [ ]:
import random
map_osm = folium.Map(location=[-33.8176967,151.0032968],
                    zoom_start=13)
empdata = pd.read_csv('/Users/ramz.sivagurunathan/hacks/hackathon/datasets/curated/empforecast.csv')
map_osm.geo_json(geo_path='test.geojson', line_color='blue', data=empdata, columns=['TZ_CODE11', 'Employment'],
             key_on='feature.properties.TZ_CODE11',
             fill_color='YlGn', fill_opacity=0.7, line_opacity=0.2,
             legend_name='Employment')
colors_list = ["red",'blue','black']
for route_id, info in route_data.iteritems():
        map_osm.line(locations=info, line_weight=2, line_color=random.choice(colors_list), popup=route_id)
        
map_osm.create_map(path='osm1.html')

In [89]:
%matplotlib inline
import pandas as pd
df = pd.read_csv('/Users/ramz.sivagurunathan/hacks/hackathon/datasets/employment_forecast/bts_employment_forecast.csv')

In [90]:
out = df[df.Year == 2016].groupby('TZ').aggregate(sum).Emp
out.to_csv('/Users/ramz.sivagurunathan/hacks/hackathon/datasets/curated/empforecast.csv')

In [94]:
route_shape = pd.read_csv('/Users/ramz.sivagurunathan/hacks/hackathon/datasets/routes/around_parramatta.csv')

In [100]:
for shape_id,shape_val in  route_shape.groupby('shape_id'):
    print shape_val.values
    break


[['1-427-sj2-1.2.H' -33.8196418019741 151.007325504456 164 22891.0394739375]
 ['1-427-sj2-1.2.H' -33.8193760997217 151.007183543646 165
  22923.350462780298]
 ['1-427-sj2-1.2.H' -33.818874141079 151.006825430903 166
  22988.234975570296]
 ['1-427-sj2-1.2.H' -33.8184106244265 151.006393548993 167 23053.4500045131]
 ['1-427-sj2-1.2.H' -33.818002140411004 151.005931855249 168
  23115.8198690311]
 ['1-427-sj2-1.2.H' -33.817504153078396 151.005174509495 169
  23205.1954809171]
 ['1-427-sj2-1.2.H' -33.817504153078396 151.005174509495 170
  23205.1954809171]
 ['1-427-sj2-1.2.H' -33.8170978840742 151.004367476713 171 23292.5625227579]
 ['1-427-sj2-1.2.H' -33.81678333257 151.003510754778 172 23379.3265706118]
 ['1-427-sj2-1.2.H' -33.8161803708981 151.001269578041 173 23597.6153701412]]

In [133]:
route_shape


Out[133]:
shape_id shape_pt_lat shape_pt_lon shape_pt_sequence shape_dist_traveled
0 1-427-sj2-1.2.H -33.819642 151.007326 164 22891.039474
1 1-427-sj2-1.2.H -33.819376 151.007184 165 22923.350463
2 1-427-sj2-1.2.H -33.818874 151.006825 166 22988.234976
3 1-427-sj2-1.2.H -33.818411 151.006394 167 23053.450005
4 1-427-sj2-1.2.H -33.818002 151.005932 168 23115.819869
5 1-427-sj2-1.2.H -33.817504 151.005175 169 23205.195481
6 1-427-sj2-1.2.H -33.817504 151.005175 170 23205.195481
7 1-427-sj2-1.2.H -33.817098 151.004367 171 23292.562523
8 1-427-sj2-1.2.H -33.816783 151.003511 172 23379.326571
9 1-427-sj2-1.2.H -33.816180 151.001270 173 23597.615370
10 1-428-sj2-1.4.R -33.816157 151.001161 3944 438117.466891
11 1-428-sj2-1.4.R -33.816783 151.003511 3945 438346.178500
12 1-428-sj2-1.4.R -33.817098 151.004367 3946 438432.942548
13 1-428-sj2-1.4.R -33.817496 151.005163 3947 438518.925104
14 1-428-sj2-1.4.R -33.817496 151.005163 3948 438518.925104
15 1-428-sj2-1.4.R -33.818002 151.005932 3949 438609.710566
16 1-428-sj2-1.4.R -33.818411 151.006394 3950 438672.080430
17 1-428-sj2-1.4.R -33.818874 151.006825 3951 438737.295459
18 1-428-sj2-1.4.R -33.819376 151.007184 3952 438802.179972
19 1-428-sj2-1.4.R -33.819917 151.007457 3953 438867.371996
20 1-445-sj2-1.1.H -33.819642 151.007326 164 22891.039474
21 1-445-sj2-1.1.H -33.819376 151.007184 165 22923.350463
22 1-445-sj2-1.1.H -33.818874 151.006825 166 22988.234976
23 1-445-sj2-1.1.H -33.818411 151.006394 167 23053.450005
24 1-445-sj2-1.1.H -33.818002 151.005932 168 23115.819869
25 1-445-sj2-1.1.H -33.817504 151.005175 169 23205.195481
26 1-445-sj2-1.1.H -33.817504 151.005175 170 23205.195481
27 1-445-sj2-1.1.H -33.817098 151.004367 171 23292.562523
28 1-445-sj2-1.1.H -33.816783 151.003511 172 23379.326571
29 1-445-sj2-1.1.H -33.816180 151.001270 173 23597.615370
... ... ... ... ... ...
10390 98-829-sj2-1.1.R -33.816951 151.003605 82 5953.316890
10391 98-829-sj2-1.1.R -33.817152 151.004079 83 6002.561179
10392 98-829-sj2-1.1.R -33.817716 151.005022 84 6110.176233
10393 98-T80-sj2-1.3.H -33.816850 151.003136 54 6077.151313
10394 98-T80-sj2-1.3.H -33.816956 151.003454 55 6108.931810
10395 98-T80-sj2-1.3.H -33.816951 151.003605 56 6122.967479
10396 98-T80-sj2-1.3.H -33.817152 151.004079 57 6172.211768
10397 98-T80-sj2-1.3.H -33.817306 151.004345 58 6202.211768
10398 98-T80-sj2-1.4.H -33.816850 151.003136 161 19624.460340
10399 98-T80-sj2-1.4.H -33.816956 151.003454 162 19656.240837
10400 98-T80-sj2-1.4.H -33.816951 151.003605 163 19670.276506
10401 98-T80-sj2-1.4.H -33.817152 151.004079 164 19719.520795
10402 98-T80-sj2-1.4.H -33.817306 151.004345 165 19749.520795
10403 98-T80-sj2-1.5.R -33.817361 151.004304 1 0.000000
10404 98-T80-sj2-1.5.R -33.817131 151.003916 2 44.204072
10405 98-T80-sj2-1.5.R -33.817041 151.003631 3 72.435261
10406 98-T80-sj2-1.5.R -33.816956 151.003454 4 91.303223
10407 98-T80-sj2-1.6.H -33.816850 151.003136 264 30662.368023
10408 98-T80-sj2-1.6.H -33.816956 151.003454 265 30694.148520
10409 98-T80-sj2-1.6.H -33.816951 151.003605 266 30708.184189
10410 98-T80-sj2-1.6.H -33.817152 151.004079 267 30757.428478
10411 98-T80-sj2-1.6.H -33.817306 151.004345 268 30787.428478
10412 98-T80-sj2-1.7.R -33.817361 151.004304 1 0.000000
10413 98-T80-sj2-1.7.R -33.817131 151.003916 2 44.204072
10414 98-T80-sj2-1.7.R -33.817041 151.003631 3 72.435261
10415 98-T80-sj2-1.7.R -33.816956 151.003454 4 91.303223
10416 98-T80-sj2-1.9.R -33.817361 151.004304 1 0.000000
10417 98-T80-sj2-1.9.R -33.817131 151.003916 2 44.204072
10418 98-T80-sj2-1.9.R -33.817041 151.003631 3 72.435261
10419 98-T80-sj2-1.9.R -33.816956 151.003454 4 91.303223

10420 rows × 5 columns


In [ ]: