aboutsummaryrefslogtreecommitdiff
path: root/visualizer/extractor
diff options
context:
space:
mode:
authorÉtienne Simon <esimon@esimon.eu>2015-05-11 20:00:04 -0400
committerÉtienne Simon <esimon@esimon.eu>2015-05-11 20:00:04 -0400
commit1eca8867751df644a62752fbbfbc6a6de849de74 (patch)
treeb0ba7e868a38e3e18c2e6c0eb5626cec035c0e5b /visualizer/extractor
parentbfda3532ea58a48533ceaa417b1bd5c3f5137be3 (diff)
downloadtaxi-1eca8867751df644a62752fbbfbc6a6de849de74.tar.gz
taxi-1eca8867751df644a62752fbbfbc6a6de849de74.zip
Add visualizer.
Lasciate ogni speranza voi ch'entrate: I am the bone of my javascript DOM is my body and JQuery is my blood I have created over a thousand lines Unknown to death Nor known to life Have withstood pain to create many functions Yet those hands shall never type anything So, as I pray, Unlimited Openlayers Works
Diffstat (limited to 'visualizer/extractor')
-rwxr-xr-xvisualizer/extractor/destinations.py19
-rwxr-xr-xvisualizer/extractor/stands.py14
-rwxr-xr-xvisualizer/extractor/test_positions.py12
-rwxr-xr-xvisualizer/extractor/train_poi.py21
4 files changed, 66 insertions, 0 deletions
diff --git a/visualizer/extractor/destinations.py b/visualizer/extractor/destinations.py
new file mode 100755
index 0000000..967e766
--- /dev/null
+++ b/visualizer/extractor/destinations.py
@@ -0,0 +1,19 @@
+#!/usr/bin/env python
+
+from data.hdf5 import taxi_it
+from visualizer import Vlist, Point
+
+
+_sample_size = 5000
+
+if __name__ == '__main__':
+ points = Vlist(cluster=True)
+ for line in taxi_it('train'):
+ if len(line['latitude'])>0:
+ points.append(Point(line['latitude'][-1], line['longitude'][-1]))
+ if len(points) >= _sample_size:
+ break
+ points.save('destinations (cluster)')
+ points.cluster = False
+ points.heatmap = True
+ points.save('destinations (heatmap)')
diff --git a/visualizer/extractor/stands.py b/visualizer/extractor/stands.py
new file mode 100755
index 0000000..9224143
--- /dev/null
+++ b/visualizer/extractor/stands.py
@@ -0,0 +1,14 @@
+#!/usr/bin/env python
+
+from data.hdf5 import taxi_it
+from visualizer import Vlist, Point
+
+
+if __name__ == '__main__':
+ it = taxi_it('stands')
+ next(it) # Ignore the "no stand" entry
+
+ points = Vlist()
+ for (i, line) in enumerate(it):
+ points.append(Point(line['stands_latitude'], line['stands_longitude'], 'Stand (%d): %s' % (i+1, line['stands_name'])))
+ points.save('stands')
diff --git a/visualizer/extractor/test_positions.py b/visualizer/extractor/test_positions.py
new file mode 100755
index 0000000..a84d2ba
--- /dev/null
+++ b/visualizer/extractor/test_positions.py
@@ -0,0 +1,12 @@
+#!/usr/bin/env python
+
+from data.hdf5 import taxi_it
+from visualizer import Vlist, Point
+
+
+if __name__ == '__main__':
+ points = Vlist(heatmap=True)
+ for line in taxi_it('test'):
+ for (lat, lon) in zip(line['latitude'], line['longitude']):
+ points.append(Point(lat, lon))
+ points.save('test positions')
diff --git a/visualizer/extractor/train_poi.py b/visualizer/extractor/train_poi.py
new file mode 100755
index 0000000..a4ccbca
--- /dev/null
+++ b/visualizer/extractor/train_poi.py
@@ -0,0 +1,21 @@
+#!/usr/bin/env python
+
+import os
+
+import data
+from data.hdf5 import TaxiDataset
+from visualizer import Path
+
+
+poi = {
+ 'longest': 1492417
+}
+
+if __name__ == '__main__':
+ prefix = os.path.join(data.path, 'visualizer', 'Train POI')
+ if not os.path.isdir(prefix):
+ os.mkdir(prefix)
+
+ d = TaxiDataset('train')
+ for (k, v) in poi.items():
+ Path(d.extract(v)).save(os.path.join('Train POI', k))