-
Notifications
You must be signed in to change notification settings - Fork 0
/
Heatmap_search_term.ipynb
333 lines (333 loc) · 92.4 KB
/
Heatmap_search_term.ipynb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import overpy\n",
"import time\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import geopandas as gpd\n",
"import numpy as np\n",
"from scipy import ndimage\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"API_WAIT_TIME = 60 # seconds\n",
"def run_overpy_query(search_term, country_code='DE'):\n",
" \n",
" api=overpy.Overpass()\n",
" # see reg ex here: https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL#Value_matches_regular_expression_.28.7E.2C_.21.7E.29\n",
" query_str = '''\n",
" area[\"ISO3166-1\"=\"{0}\"][admin_level=2];\n",
" (node[\"name\"~\"{1}\", i](area);\n",
" way[\"name\"~\"{1}\", i](area);\n",
" rel[\"name\"~\"{1}\", i](area);\n",
" );\n",
" out center;\n",
" '''.format(country_code, search_term)\n",
" try:\n",
" r = api.query(query_str)\n",
" except:\n",
" print('Query unsuccessful. Wait {} seconds and try again.'.format(API_WAIT_TIME))\n",
" time.sleep(API_WAIT_TIME)\n",
" r = api.query(query_str)\n",
" \n",
" # extract coordinates from query result\n",
" coords = []\n",
" coords += [(float(node.lon), float(node.lat)) for node in r.nodes]\n",
" coords += [(float(way.center_lon), float(way.center_lat)) for way in r.ways]\n",
" coords += [(float(rel.center_lon), float(rel.center_lat)) for rel in r.relations]\n",
" df = pd.DataFrame(coords)\n",
" df.columns = ['lon', 'lat']\n",
" \n",
" return df"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Query unsuccessful. Wait 60 seconds and try again.\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>lon</th>\n",
" <th>lat</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>9.988323</td>\n",
" <td>48.388831</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>8.692704</td>\n",
" <td>49.407714</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>6.273176</td>\n",
" <td>50.887146</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>13.307399</td>\n",
" <td>52.500242</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>8.929486</td>\n",
" <td>48.466880</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" lon lat\n",
"0 9.988323 48.388831\n",
"1 8.692704 49.407714\n",
"2 6.273176 50.887146\n",
"3 13.307399 52.500242\n",
"4 8.929486 48.466880"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df_ka = run_overpy_query(search_term='adenauer')\n",
"df_ka.head()"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"def visualise_osm_scatter(search_term, title_name, country_code='DE', author_line=True):\n",
" df = run_overpy_query(search_term=search_term, country_code=country_code)\n",
" world = gpd.read_file('C:\\\\Users\\\\Richard\\Desktop\\\\python\\\\heat_map\\\\ne_10m_admin_1_states_provinces\\\\ne_10m_admin_1_states_provinces.shp')\n",
" fig, ax = plt.subplots(figsize=[8, 8])\n",
" ax.axis('off')\n",
" world[world['iso_a2']=='DE'].plot(color='w', edgecolor='black', linewidth=0.5, ax=ax)\n",
" ax.scatter(df['lon'], df['lat'], c='red')\n",
" ax.set_title('Location of the {} places\\nnamed after {}\\n'.format(len(df), title_name),\n",
" color=(0.41, 0.41, 0.41),\n",
" size=20)\n",
" #author line\n",
" if author_line:\n",
" fig.text(0.99, 0.01, '@rikunert', color='lightgrey', style='italic',\n",
" horizontalalignment='right')\n",
" \n",
" return fig, ax"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Query unsuccessful. Wait 60 seconds and try again.\n"
]
},
{
"data": {
"image/png": "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bdu2tWrwQfCDzZs378Ty5cvnut3u7q1bt+6Qk5Ozs6Ki4ptrrrkmPiwsLLKqqqomLy/v4/T09O2jR49eumrVqnrvkVNTU6NPP/20eufOnXnZ2dllktSpU6dWN954Y9sbbrjBHRUVpUu5Jf3u3bsrxo8fP3/37t3PXKanClwWBIofOcMw3J07dx734IMPPvfCCy/UzRtthE/X9dm8eXPJkiVLjqSlpa3dt2/fbElBCQkJU2JiYn7SunXr0KCgIE9GRkZZRkbGc5mZmRsutj/DMILi4+On9ujR439ERESEVVVVVRYXFxd5vd6jqampkwsLC7N97QxJHkkRklpLUrt27Tr369fv30NDQ+2WLVuGREdHRzzyyCORUVFR5x4oIKDutTub2y1VX/yu00VFRfr9739fkp+fb7z44outDh06pKVLlxZXVlbaLpfLrqmpcY0YMSL4iSeeCHC5XHrooYdKDh065Pr44489kprVYNTGduedd364du3an1+sXe/evR9++OGHX3vyyScj3O5/5tnNmzeXzZo16/NDhw792ev17rBtO8/3/ruuTZs2CUFBQa/s2rWrzw033HBJdU2aNCnrT3/6k2nbNlc7Q9PR2IM4WPyz9OrVa+L69euL7XHjbFs6dxk3zr6camtr7YKCAvvAgQP2l19+aVdXV5+37eHDh+0pU6Zkz5gxIzcpKcn2er22bdv2unXrykNDQ70ej6enP18r27Yl6bq+ffu+/qtf/Wrf1q1bK743KK++1+/0cgE1NTX2okWLSm+//fai1NTUBr+WNTU1dlVVVYPb4/I4fvy4fcstt6yyG/ie6dix46A77rhj28SJE49MmDAh85577kmKjY19VL4PbufZps/w4cOT161bV3wptb366qvHJbVraG0sLP5Y6KFoRhISEl7/fN++Z1y19YxfbOCn64tJS0vT4sWLvZ9++mlSeXl5VklJyUG32x0UGhp609ChQ2+ZOXNmp/q2W716df78+fP3njhxYovb7W736KOP/qZv377tRo4ceWdBQcE6x4X9QL4enl917tz5tyNGjIh75JFH2rQKDW1QD8Xnn39eOWfOnPKgoCAjICBAXq9Xv/jFL4LGjx/fwo9PoVk7fvy49u7dW2VZ1reHDx8uKi0tLXK5XHK73QGnF5fLFeB2u90tW7Z0ezwet8fjcQUGBrrff//9/bt27brb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\n",
"text/plain": [
"<Figure size 576x576 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"fig, ax = visualise_osm_scatter('adenauer', 'Konrad Adenauer')\n",
"fig.savefig('konrad_adenauer_scatter.png', bbox_inches='tight', dpi=1000)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [],
"source": [
"def visualise_osm(search_term, title_name, country_code='DE', plot='heatmap', author_line=True):\n",
" \n",
" df = run_overpy_query(search_term=search_term, country_code=country_code)\n",
" \n",
" # plot query results on map of Germany\n",
" world = gpd.read_file('C:\\\\Users\\\\Richard\\Desktop\\\\python\\\\heat_map\\\\ne_10m_admin_1_states_provinces\\\\ne_10m_admin_1_states_provinces.shp')\n",
" fig, ax = plt.subplots(figsize=[8, 8])\n",
" ax.axis('off')\n",
" if plot=='scatter':\n",
" world[world['iso_a2']=='DE'].plot(color='w', edgecolor='black', linewidth=0.5, ax=ax)\n",
" ax.scatter(df['lon'], df['lat'], c='red')\n",
" elif plot=='heatmap':\n",
" # see https://nbviewer.jupyter.org/gist/perrygeo/c426355e40037c452434\n",
" smoothing = 30 # smoothing factor\n",
" bins=1000 # \"pixel count\"\n",
" cmap='hot' # color scale\n",
" xlim = [5.7, 15.2] # East-West extent of Germany\n",
" ylim = [47.1, 55.1] # North-South extent of Germany\n",
" heatmap, xedges, yedges = np.histogram2d(df['lat'], df['lon'], \n",
" bins=bins, range=[ylim, xlim])\n",
" extent = [yedges[0], yedges[-1], \n",
" xedges[-1], xedges[0]]\n",
" logheatmap = np.log(heatmap)\n",
" logheatmap[np.isneginf(logheatmap)] = 0\n",
" logheatmap = ndimage.filters.gaussian_filter(logheatmap, smoothing, mode='nearest') # smooth out peaks\n",
" logheatmap[logheatmap < 0.0001] = 0 # clearly show areas without occurence\n",
" logheatmap = np.max(logheatmap) - logheatmap # reverse color scale\n",
"\n",
" world[world['iso_a2']=='DE']['geometry'].boundary.plot(color='k', edgecolor='k', linewidth=0.2, ax=ax)\n",
" ax.imshow(logheatmap, cmap=cmap, extent=extent)\n",
" ax.invert_yaxis()\n",
" ax.set(xlim=xlim, ylim=ylim)\n",
" \n",
" ax.set_title('Location of the {} places\\nnamed after {}\\n'.format(len(df), title_name),\n",
" color=(0.41, 0.41, 0.41),\n",
" size=20)\n",
" #author line\n",
" if author_line:\n",
" fig.text(0.99, 0.01, '@rikunert', color='lightgrey', style='italic',\n",
" horizontalalignment='right')\n",
" \n",
" return fig, ax"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"see https://nbviewer.jupyter.org/gist/perrygeo/c426355e40037c452434"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"C:\\Users\\Richard\\Anaconda3\\lib\\site-packages\\ipykernel_launcher.py:23: RuntimeWarning: divide by zero encountered in log\n"
]
}
],
"source": [
"fig, ax = visualise_osm('adenauer', 'Konrad Adenauer')\n",
"fig.savefig('konrad_adenauer.png', bbox_inches='tight', dpi=1000)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"fig, ax = visualise_osm('karl-liebknecht', 'Karl Liebknecht')\n",
"fig.savefig('karl_liebknecht.png', bbox_inches='tight', dpi=1000)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"fig, ax = visualise_osm('rosa-luxemburg', 'Rosa Luxemburg', plot='heatmap')\n",
"fig.savefig('rosa_luxemburg.png', bbox_inches='tight', dpi=1000)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"fig, ax = visualise_osm('hindenburg', 'Paul von Hindenburg', plot='heatmap')\n",
"fig.savefig('paul_von_hindenburg.png', bbox_inches='tight', dpi=1000)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"fig, ax = visualise_osm('luther', 'Martin Luther', plot='heatmap')\n",
"fig.savefig('martin_luther.png', bbox_inches='tight', dpi=1000)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.0"
}
},
"nbformat": 4,
"nbformat_minor": 2
}