Tour de France 2020
During the Tour de France, aircraft are contracted to relay TV signals from helicopters filming the riders. See how their trajectories fits the official map at the bottom of the page.
flight_id | start | stop | duration | |
---|---|---|---|---|
0 | ASR182B_000 | 2020-08-29 07:27:30+00:00 | 2020-08-29 10:47:25+00:00 | 0 days 03:19:55 |
1 | ASR182B_001 | 2020-08-30 10:27:30+00:00 | 2020-08-30 16:42:25+00:00 | 0 days 06:14:55 |
2 | ASR182B_002 | 2020-08-31 09:37:30+00:00 | 2020-08-31 15:42:25+00:00 | 0 days 06:04:55 |
3 | ASR182B_003 | 2020-09-01 10:52:30+00:00 | 2020-09-01 15:57:25+00:00 | 0 days 05:04:55 |
4 | ASR182B_004 | 2020-09-02 10:27:30+00:00 | 2020-09-02 15:22:25+00:00 | 0 days 04:54:55 |
5 | ASR182B_005 | 2020-09-03 09:37:30+00:00 | 2020-09-03 15:02:25+00:00 | 0 days 05:24:55 |
6 | ASR182B_006 | 2020-09-04 10:52:30+00:00 | 2020-09-04 15:12:25+00:00 | 0 days 04:19:55 |
7 | ASR182B_007 | 2020-09-05 10:47:30+00:00 | 2020-09-05 15:47:25+00:00 | 0 days 04:59:55 |
8 | ASR182B_008 | 2020-09-06 09:37:30+00:00 | 2020-09-06 14:47:25+00:00 | 0 days 05:09:55 |
9 | ASR182B_009 | 2020-09-08 10:52:30+00:00 | 2020-09-08 15:27:25+00:00 | 0 days 04:34:55 |
10 | ASR182B_010 | 2020-09-09 10:47:30+00:00 | 2020-09-09 15:52:25+00:00 | 0 days 05:04:55 |
11 | ASR182B_011 | 2020-09-10 09:42:30+00:00 | 2020-09-10 15:17:25+00:00 | 0 days 05:34:55 |
12 | ASR182B_012 | 2020-09-11 09:27:30+00:00 | 2020-09-11 15:17:25+00:00 | 0 days 05:49:55 |
13 | ASR182B_013 | 2020-09-12 10:27:30+00:00 | 2020-09-12 15:47:25+00:00 | 0 days 05:19:55 |
14 | ASR182B_014 | 2020-09-13 10:02:30+00:00 | 2020-09-13 15:22:25+00:00 | 0 days 05:19:55 |
15 | ASR182B_015 | 2020-09-15 10:32:30+00:00 | 2020-09-15 15:57:25+00:00 | 0 days 05:24:55 |
16 | ASR182B_016 | 2020-09-16 09:47:30+00:00 | 2020-09-16 15:22:25+00:00 | 0 days 05:34:55 |
17 | ASR182B_018 | 2020-09-17 09:47:30+00:00 | 2020-09-17 15:22:25+00:00 | 0 days 05:34:55 |
18 | ASR182B_019 | 2020-09-18 10:52:30+00:00 | 2020-09-18 15:27:25+00:00 | 0 days 04:34:55 |
19 | ASR182B_020 | 2020-09-19 10:47:30+00:00 | 2020-09-19 16:22:25+00:00 | 0 days 05:34:55 |
from traffic.data.samples import tour_de_france
from ipywidgets import Layout
def straight_ratio(flight) -> float:
return flight.distance() / flight.cumulative_distance(False, False).max("cumdist")
preprocessed = (
tour_de_france.iterate_lazy(iterate_kw=dict(by="1h"))
.assign_id()
.apply_time("5 min", straight_ratio=straight_ratio)
.query("straight_ratio < .5")
.max_split()
.longer_than("1h")
.eval()
)
stats = preprocessed.summary(["flight_id", "start", "stop", "duration"]).eval()
m = preprocessed.map_leaflet(
zoom=6, layout=Layout(max_width="600px", height="600px"),
)
display(m)
display(stats)