diff --git a/examples/M20190649.ipynb b/examples/M20190649.ipynb new file mode 100644 index 0000000..bdf0a13 --- /dev/null +++ b/examples/M20190649.ipynb @@ -0,0 +1,1252 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Package loading and basic configurations" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Querying enviroCar Tracks" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "%reload_ext autoreload\n", + "%autoreload 2\n", + "\n", + "# load dependencies'\n", + "import pandas as pd\n", + "import geopandas as gpd\n", + "\n", + "from envirocar import TrackAPI, DownloadClient, BboxSelector, ECConfig\n", + "\n", + "# create an initial but optional config and an api client\n", + "config = ECConfig()\n", + "track_api = TrackAPI(api_client=DownloadClient(config=config))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The following cell queries tracks from the enviroCar API. It defines a bbox for the area of Münster (Germany) and requests 50 tracks. The result is a GeoDataFrame, which is a geo-extended Pandas dataframe from the GeoPandas library. It contains all information of the track in a flat dataframe format including a specific geometry column. " + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CO2.unitCO2.valueCalculated MAF.unitCalculated MAF.valueConsumption.unitConsumption.valueEngine Load.unitEngine Load.valueGPS Accuracy.unitGPS Accuracy.value...sensor.fuelTypesensor.idsensor.manufacturersensor.modelsensor.typetimetrack.begintrack.endtrack.idtrack.length
0kg/h5.626691g/s7.283771l/h2.394336%47.156864%3.618905...gasoline58395f40e4b0a979d45bd61bDodgeCalibercar2020-04-06T20:43:352020-04-06T20:43:35Z2020-04-06T22:31:45Z5e8baea465b80c5d6b4dbfbd169.237435
1kg/h7.929576g/s10.264864l/h3.374287%57.130478%3.386111...gasoline58395f40e4b0a979d45bd61bDodgeCalibercar2020-04-06T20:43:402020-04-06T20:43:35Z2020-04-06T22:31:45Z5e8baea465b80c5d6b4dbfbd169.237435
2kg/h4.898223g/s6.340767l/h2.084350%22.004620%3.000000...gasoline58395f40e4b0a979d45bd61bDodgeCalibercar2020-04-06T20:43:452020-04-06T20:43:35Z2020-04-06T22:31:45Z5e8baea465b80c5d6b4dbfbd169.237435
3kg/h5.425340g/s7.023122l/h2.308655%35.564430%3.500000...gasoline58395f40e4b0a979d45bd61bDodgeCalibercar2020-04-06T20:43:502020-04-06T20:43:35Z2020-04-06T22:31:45Z5e8baea465b80c5d6b4dbfbd169.237435
4kg/h4.882005g/s6.319773l/h2.077449%40.345959%4.500000...gasoline58395f40e4b0a979d45bd61bDodgeCalibercar2020-04-06T20:43:552020-04-06T20:43:35Z2020-04-06T22:31:45Z5e8baea465b80c5d6b4dbfbd169.237435
..................................................................
585NaNNaNNaNNaNNaNNaN%40.213574%4.026874...diesel523c72d1e4b060b8865cf1d4BMW525car2019-12-10T08:11:172019-12-10T07:22:05Z2019-12-10T08:11:37Z5df148693bdb69186846bad740.461526
586NaNNaNNaNNaNNaNNaN%21.583306%3.447538...diesel523c72d1e4b060b8865cf1d4BMW525car2019-12-10T08:11:222019-12-10T07:22:05Z2019-12-10T08:11:37Z5df148693bdb69186846bad740.461526
587NaNNaNNaNNaNNaNNaN%60.610872%3.000000...diesel523c72d1e4b060b8865cf1d4BMW525car2019-12-10T08:11:272019-12-10T07:22:05Z2019-12-10T08:11:37Z5df148693bdb69186846bad740.461526
588NaNNaNNaNNaNNaNNaN%63.246544%3.457266...diesel523c72d1e4b060b8865cf1d4BMW525car2019-12-10T08:11:322019-12-10T07:22:05Z2019-12-10T08:11:37Z5df148693bdb69186846bad740.461526
589NaNNaNNaNNaNNaNNaN%1.178107%4.791479...diesel523c72d1e4b060b8865cf1d4BMW525car2019-12-10T08:11:372019-12-10T07:22:05Z2019-12-10T08:11:37Z5df148693bdb69186846bad740.461526
\n", + "

12332 rows × 52 columns

\n", + "
" + ], + "text/plain": [ + " CO2.unit CO2.value Calculated MAF.unit Calculated MAF.value \\\n", + "0 kg/h 5.626691 g/s 7.283771 \n", + "1 kg/h 7.929576 g/s 10.264864 \n", + "2 kg/h 4.898223 g/s 6.340767 \n", + "3 kg/h 5.425340 g/s 7.023122 \n", + "4 kg/h 4.882005 g/s 6.319773 \n", + ".. ... ... ... ... \n", + "585 NaN NaN NaN NaN \n", + "586 NaN NaN NaN NaN \n", + "587 NaN NaN NaN NaN \n", + "588 NaN NaN NaN NaN \n", + "589 NaN NaN NaN NaN \n", + "\n", + " Consumption.unit Consumption.value Engine Load.unit Engine Load.value \\\n", + "0 l/h 2.394336 % 47.156864 \n", + "1 l/h 3.374287 % 57.130478 \n", + "2 l/h 2.084350 % 22.004620 \n", + "3 l/h 2.308655 % 35.564430 \n", + "4 l/h 2.077449 % 40.345959 \n", + ".. ... ... ... ... \n", + "585 NaN NaN % 40.213574 \n", + "586 NaN NaN % 21.583306 \n", + "587 NaN NaN % 60.610872 \n", + "588 NaN NaN % 63.246544 \n", + "589 NaN NaN % 1.178107 \n", + "\n", + " GPS Accuracy.unit GPS Accuracy.value ... sensor.fuelType \\\n", + "0 % 3.618905 ... gasoline \n", + "1 % 3.386111 ... gasoline \n", + "2 % 3.000000 ... gasoline \n", + "3 % 3.500000 ... gasoline \n", + "4 % 4.500000 ... gasoline \n", + ".. ... ... ... ... \n", + "585 % 4.026874 ... diesel \n", + "586 % 3.447538 ... diesel \n", + "587 % 3.000000 ... diesel \n", + "588 % 3.457266 ... diesel \n", + "589 % 4.791479 ... diesel \n", + "\n", + " sensor.id sensor.manufacturer sensor.model sensor.type \\\n", + "0 58395f40e4b0a979d45bd61b Dodge Caliber car \n", + "1 58395f40e4b0a979d45bd61b Dodge Caliber car \n", + "2 58395f40e4b0a979d45bd61b Dodge Caliber car \n", + "3 58395f40e4b0a979d45bd61b Dodge Caliber car \n", + "4 58395f40e4b0a979d45bd61b Dodge Caliber car \n", + ".. ... ... ... ... \n", + "585 523c72d1e4b060b8865cf1d4 BMW 525 car \n", + "586 523c72d1e4b060b8865cf1d4 BMW 525 car \n", + "587 523c72d1e4b060b8865cf1d4 BMW 525 car \n", + "588 523c72d1e4b060b8865cf1d4 BMW 525 car \n", + "589 523c72d1e4b060b8865cf1d4 BMW 525 car \n", + "\n", + " time track.begin track.end \\\n", + "0 2020-04-06T20:43:35 2020-04-06T20:43:35Z 2020-04-06T22:31:45Z \n", + "1 2020-04-06T20:43:40 2020-04-06T20:43:35Z 2020-04-06T22:31:45Z \n", + "2 2020-04-06T20:43:45 2020-04-06T20:43:35Z 2020-04-06T22:31:45Z \n", + "3 2020-04-06T20:43:50 2020-04-06T20:43:35Z 2020-04-06T22:31:45Z \n", + "4 2020-04-06T20:43:55 2020-04-06T20:43:35Z 2020-04-06T22:31:45Z \n", + ".. ... ... ... \n", + "585 2019-12-10T08:11:17 2019-12-10T07:22:05Z 2019-12-10T08:11:37Z \n", + "586 2019-12-10T08:11:22 2019-12-10T07:22:05Z 2019-12-10T08:11:37Z \n", + "587 2019-12-10T08:11:27 2019-12-10T07:22:05Z 2019-12-10T08:11:37Z \n", + "588 2019-12-10T08:11:32 2019-12-10T07:22:05Z 2019-12-10T08:11:37Z \n", + "589 2019-12-10T08:11:37 2019-12-10T07:22:05Z 2019-12-10T08:11:37Z \n", + "\n", + " track.id track.length \n", + "0 5e8baea465b80c5d6b4dbfbd 169.237435 \n", + "1 5e8baea465b80c5d6b4dbfbd 169.237435 \n", + "2 5e8baea465b80c5d6b4dbfbd 169.237435 \n", + "3 5e8baea465b80c5d6b4dbfbd 169.237435 \n", + "4 5e8baea465b80c5d6b4dbfbd 169.237435 \n", + ".. ... ... \n", + "585 5df148693bdb69186846bad7 40.461526 \n", + "586 5df148693bdb69186846bad7 40.461526 \n", + "587 5df148693bdb69186846bad7 40.461526 \n", + "588 5df148693bdb69186846bad7 40.461526 \n", + "589 5df148693bdb69186846bad7 40.461526 \n", + "\n", + "[12332 rows x 52 columns]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "bbox = BboxSelector([\n", + " 7.611165771484375, # min_x\n", + " 51.94807412325402, # min_y\n", + " 7.648200988769531, # max_x\n", + " 51.97261482608728 # max_y\n", + "])\n", + "\n", + "# issue a query\n", + "track_df = track_api.get_tracks(bbox=bbox, num_results=20) # requesting 50 tracks inside the bbox\n", + "track_df" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 55, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "track_df.plot(figsize=(8, 10))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# summary statistics" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['CO2.unit', 'CO2.value', 'Calculated MAF.unit', 'Calculated MAF.value',\n", + " 'Consumption.unit', 'Consumption.value', 'Engine Load.unit',\n", + " 'Engine Load.value', 'GPS Accuracy.unit', 'GPS Accuracy.value',\n", + " 'GPS Altitude.unit', 'GPS Altitude.value', 'GPS Bearing.unit',\n", + " 'GPS Bearing.value', 'GPS HDOP.unit', 'GPS HDOP.value', 'GPS PDOP.unit',\n", + " 'GPS PDOP.value', 'GPS Speed.unit', 'GPS Speed.value', 'GPS VDOP.unit',\n", + " 'GPS VDOP.value', 'Intake Pressure.unit', 'Intake Pressure.value',\n", + " 'Intake Temperature.unit', 'Intake Temperature.value', 'MAF.unit',\n", + " 'MAF.value', 'O2 Lambda Voltage ER.unit', 'O2 Lambda Voltage ER.value',\n", + " 'O2 Lambda Voltage.unit', 'O2 Lambda Voltage.value', 'Rpm.unit',\n", + " 'Rpm.value', 'Speed.unit', 'Speed.value', 'Throttle Position.unit',\n", + " 'Throttle Position.value', 'geometry', 'id', 'sensor.constructionYear',\n", + " 'sensor.engineDisplacement', 'sensor.fuelType', 'sensor.id',\n", + " 'sensor.manufacturer', 'sensor.model', 'sensor.type', 'time',\n", + " 'track.begin', 'track.end', 'track.id', 'track.length', 'lat', 'lng',\n", + " 'speed'],\n", + " dtype='object')" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "track_df.columns" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CO2.valueCalculated MAF.valueConsumption.valueEngine Load.valueGPS Accuracy.valueGPS Altitude.valueGPS Bearing.valueGPS HDOP.valueGPS PDOP.valueGPS Speed.value...O2 Lambda Voltage.valueRpm.valueSpeed.valueThrottle Position.valuesensor.constructionYearsensor.engineDisplacementtrack.lengthlatlngspeed
count11020.00000011020.00000011020.00000012315.00000012332.00000012332.00000012303.00000011237.00000011237.00000012332.000000...1095.00000012315.00000012315.00000012115.00000012332.00000012332.00000012332.00000012332.00000012332.00000012315.000000
mean19.60594925.3799718.34295751.7185412.16451387.437767150.2256030.5675561.07570582.381859...0.6703382311.83669881.47006029.0670102007.7838141803.041518149.16381552.4537447.88767681.470060
std12.16285615.7448605.17568324.3512801.42875727.866227106.8596150.2488520.55297546.020793...0.302914975.92394645.22674320.1202372.31175891.86355975.5882580.4701450.42075345.226743
min-2.563380-3.318304-1.090800-495.7928661.00000030.9999990.0000000.4000000.8000000.000000...0.041240-183.9130500.00000010.0000002007.0000001395.0000001.56109151.9343277.1131740.000000
25%8.54953911.0674093.63810234.2213331.50000069.00000045.7025980.4000000.83705247.539286...0.4287911509.96768547.00000117.2429372007.0000001798.000000142.20993552.0025977.64601347.000001
50%18.09167323.4197357.69858452.1116921.50000093.000000170.7761280.6000001.00000083.917169...0.5878862180.23333383.00000022.0000012007.0000001798.000000169.23743552.2760807.69674883.000000
75%29.03857837.59054112.35684169.4117642.500000103.000000223.2000000.6000001.166860124.369941...0.8606653240.377420122.99999629.0000002007.0000001798.000000219.76793452.8972618.173459122.999996
max55.68072472.07889423.693925100.00000315.036181195.999997359.8922905.44474740.292816174.567824...1.2479104530.827519373.33334089.0000032018.0000001995.000000233.95199653.5517548.864959373.333340
\n", + "

8 rows × 25 columns

\n", + "
" + ], + "text/plain": [ + " CO2.value Calculated MAF.value Consumption.value \\\n", + "count 11020.000000 11020.000000 11020.000000 \n", + "mean 19.605949 25.379971 8.342957 \n", + "std 12.162856 15.744860 5.175683 \n", + "min -2.563380 -3.318304 -1.090800 \n", + "25% 8.549539 11.067409 3.638102 \n", + "50% 18.091673 23.419735 7.698584 \n", + "75% 29.038578 37.590541 12.356841 \n", + "max 55.680724 72.078894 23.693925 \n", + "\n", + " Engine Load.value GPS Accuracy.value GPS Altitude.value \\\n", + "count 12315.000000 12332.000000 12332.000000 \n", + "mean 51.718541 2.164513 87.437767 \n", + "std 24.351280 1.428757 27.866227 \n", + "min -495.792866 1.000000 30.999999 \n", + "25% 34.221333 1.500000 69.000000 \n", + "50% 52.111692 1.500000 93.000000 \n", + "75% 69.411764 2.500000 103.000000 \n", + "max 100.000003 15.036181 195.999997 \n", + "\n", + " GPS Bearing.value GPS HDOP.value GPS PDOP.value GPS Speed.value \\\n", + "count 12303.000000 11237.000000 11237.000000 12332.000000 \n", + "mean 150.225603 0.567556 1.075705 82.381859 \n", + "std 106.859615 0.248852 0.552975 46.020793 \n", + "min 0.000000 0.400000 0.800000 0.000000 \n", + "25% 45.702598 0.400000 0.837052 47.539286 \n", + "50% 170.776128 0.600000 1.000000 83.917169 \n", + "75% 223.200000 0.600000 1.166860 124.369941 \n", + "max 359.892290 5.444747 40.292816 174.567824 \n", + "\n", + " ... O2 Lambda Voltage.value Rpm.value Speed.value \\\n", + "count ... 1095.000000 12315.000000 12315.000000 \n", + "mean ... 0.670338 2311.836698 81.470060 \n", + "std ... 0.302914 975.923946 45.226743 \n", + "min ... 0.041240 -183.913050 0.000000 \n", + "25% ... 0.428791 1509.967685 47.000001 \n", + "50% ... 0.587886 2180.233333 83.000000 \n", + "75% ... 0.860665 3240.377420 122.999996 \n", + "max ... 1.247910 4530.827519 373.333340 \n", + "\n", + " Throttle Position.value sensor.constructionYear \\\n", + "count 12115.000000 12332.000000 \n", + "mean 29.067010 2007.783814 \n", + "std 20.120237 2.311758 \n", + "min 10.000000 2007.000000 \n", + "25% 17.242937 2007.000000 \n", + "50% 22.000001 2007.000000 \n", + "75% 29.000000 2007.000000 \n", + "max 89.000003 2018.000000 \n", + "\n", + " sensor.engineDisplacement track.length lat lng \\\n", + "count 12332.000000 12332.000000 12332.000000 12332.000000 \n", + "mean 1803.041518 149.163815 52.453744 7.887676 \n", + "std 91.863559 75.588258 0.470145 0.420753 \n", + "min 1395.000000 1.561091 51.934327 7.113174 \n", + "25% 1798.000000 142.209935 52.002597 7.646013 \n", + "50% 1798.000000 169.237435 52.276080 7.696748 \n", + "75% 1798.000000 219.767934 52.897261 8.173459 \n", + "max 1995.000000 233.951996 53.551754 8.864959 \n", + "\n", + " speed \n", + "count 12315.000000 \n", + "mean 81.470060 \n", + "std 45.226743 \n", + "min 0.000000 \n", + "25% 47.000001 \n", + "50% 83.000000 \n", + "75% 122.999996 \n", + "max 373.333340 \n", + "\n", + "[8 rows x 25 columns]" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "track_df.describe()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Inspecting a single Track" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "some_track_id = track_df['track.id'].unique()[4]\n", + "some_track = track_df[track_df['track.id'] == some_track_id]\n", + "some_track.plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "ax = some_track['Speed.value'].plot()\n", + "ax.set_title(\"Speed\")\n", + "ax.set_ylabel(some_track['Speed.unit'][0])\n", + "ax" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Visualisation of another single track using Matplotlib" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAHcAAAD6CAYAAACbF9iMAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAASp0lEQVR4nO2dfZBV5X3HP18gYEWoEpBWhCwKjTWKYLeCMrUYg1VIdWfyYjJotG10mGojtWmFLtVE3YaOlrHTl7RA7bQFG6a+7HRcgu60pU6MEJfsAhqpQlwRMIrBiMZRu/jrH+dcvSzn3nvOvefcl+c8n5kd7z33Off5Xb4+z3nOc77P75GZ4XGTEY0OwJMdXlyH8eI6jBfXYby4DuPFdZhRcQpJGgTeAo4CQ2bWLuku4CrgA+A14HozOxhx7jRgHTAVMGCRmQ2mEr2nLIpznxuK225mrxcdG29mR8LXXwPONrOlEeduAbrMrFfSScAHZvZOufomTpxobW1tSX5Hbtm+ffvrZjYp6rNYLTeKgrAhYwla5TFIOhsYZWa94Tlvx/nutrY2+vr6qg0tV0h6qdRnca+5BjwuabukG4u+uEvSy8AS4PaI834F+JmkhyX1S7pH0sgkwXuqJ664883sfOAK4CZJFwOYWaeZTQU2ADdHnDcK+A3g68CvA2cA10dVIOlGSX2S+g4dOpTsV3giiSVuYaBkZq8BjwAXDCvyAPC5iFP3A/1m9mMzGwK6gfNL1LHGzNrNrH3SpMhLiCchFcWVNFbSuMJr4DLgGUkzi4pdCeyOOP1p4BRJBbU+DfyotpA9cYkzoJoMPCKpUP4BM9ss6SFJnyS4FXoJWAogqR1YamZfNbOjkr4O/KeCL9gOrM3ih3iOJ9atUL1pb283P1qOh6TtZtYe9ZmfoXKYqu9zW42zOjfx7tHje6lr5k3j7o5zGxBR9uSi5ZYSFmD91n2s7N5V54jqQy7ELSVsgfVb99UpkvqSC3HjMH15T6NDSB0vbojhnsC5EPeEkYpVzoA2hwTOhbi7uxbFFhjcETgX4kIg8MxTx8YuP+uOzRlGUx9yIy5A760LYpc98t7R7AKpE7kSd8YKN7rbuORihmpl9y5n72XL4by4c7t6efWt9xsdRkNwWtwZK3oYar6HXnXDWXFrvZ0ZXLU4pUgah5PiVivs/DMnsOGGC1OOpnFkbkoPzx8PPAc8YmZRRrpU6O4/wLKNA4nOmTxuNNs6F2YUUWNJ0nIvKTalA/eY2Z/Bh6b02wmtNhHcBfxPdSHGoxph77t6Nh1zpmQUUePJ1JQOIOnXCHxYm4FIO0gaJBFWwIsOXFMrkakpXdII4C+BP04j2DQ4YaRyISzEb7nzzeygpFOBXkm7zewJM+sEOiWtIDCl3zHsvN8HNpnZy6F7siTh/zQ3AkybNi3Rj0jCqs+fd8z7JWuf4sm9hz98P2bUCP7ic7Oc6K4Tux8lfQN428zuLTr2CaDHzM4ZVnYDwYqDD4CTgNHA35nZ8nJ1VON+rOeTnGbyXZVzP1ZsuaERfYSZvVVkSr9T0kwzeyEsFmlKN7MlRd9zPcFKwbLCtgLrt+77cDqzmQdlca65k4HvSdoB/ICghW4GVkl6RtJOAsFvgcCULmldZhE3Gcs2DjC3q7fRYUTilCm9kQ/ZRwn2fKv+A7XcmNIHVy1mcNVirpmX3YCsFEPWfA4Op8QtcHfHuUweN7ohdbct76G7/0BD6h6Ok+ICbOtc2DCBl20cYMnapxpSdzFOXXOzYvi9cFzqMW9d7prrxU1I0uvqCSPF7q5FGUWTowFVPRhctZj4JtlgKUujzO5e3Cp4cdXiRNfzRq1m8OJWybbOhdx39ezY5Q1YuHpLZvFE4cWtgY45UxJ10y+89vNM4xmOF7cGuvsPMONPN0U/yG4CnPRQ1YOFq7fUvSUmxYtbBdOX9zRtay3Gi5uQZps/LocXtwLd/Qe47aGdvDf0QaNDSYwXdxjVTjXGod5G99yLm5WYzWBwz9SULmk28G1gfHhul5ltTC/82kh7YJT1PHJSktznXmJms4smqe8xs1lmNht4lOh8y+8AXzGzTwGXA/dJOrm2kNMhbWHnnzmhqYSFjE3pZvZ80euDkl4DJgE/q7beNFiy9qnUhG221lpMXHELpnQD/sHM1kBgSge+ArwJXFLuCyRdQGBt3Vt9uOmQxjW2FdYYZW1KB0DSLwP/ClxnZpH3FPUypdfqVGyGgVJcYolbnCldUiFT+hNFRR4AeogQN1zh1wOsNLOtZepYA6yB4GF93B+QhO7+A4lW2beSkFFkakqXNJogbf6/mNm/pxh3VcRZLNbqghaTaaZ04IvAxcDHwxUHENwyJVtrWUdcERZiiGtmPwbOizgetWEFZtYHfDV8vR5YX2OMqRDnWtsIv3OW5OZ5bqVr7fgxI5tmcVda5ELcOK125zcvr0Mk9cV5ceOMkMePcXOTMufFjTNCdrHVguPittKD9SxwVty4NlLXRsjFOCtuHPOaiyPkYpwVNw6uXmsL5FZcF3I7ViKX4iZZBtLK5FLcZs0+kza5FDcveHEdxovrMLkUtxmSkdSDWOJKGpS0S9KApL7w2F2SdobHHpd0Wolzr5P0Qvh3XZrBV0tWKwqajUx9y5ImEPiq5hL4ru6QdEqtQXviUXW3HDOZ9m8BvWZ22MzeAHoJzOmeOpBpMm1gCvBy0fv94bHMcfmBQFziijvfzM4HrgBuknQxgJl1mtlUYAOBb3k4UekiSqXLv1FSn6S+Q4cOxQyrNC4/EIhLLHGLfcsEVtULhhV5AIgyzO0Hpha9Px2I3MHEzNaYWbuZtU+aNClOWJ4KVBRX0lhJ4wqvCXzLz0iaWVQs0rcMPAZcJumUcCB1WXjMUwcy9S2b2eFwqefT4XfdaWb5uA9pAjL1LYfv7wfuryFGT5XkcoYqL3hxHcaL6zBeXIfx4jqMF9dhnBV3xop8rzYAR8Wd29Wb673qCzgn7sruXYnyXriMc+IWNlAsR6P2G6o3Tokbd/FXs+ePSgunxI2z+CtPD/GdErcSk8eNztVDfGfErdQli/x0xwWcEbdSl/xiDlb1Daflxe3uP5D79AilqCWZ9j3AbwPvE2Ri/R0zOy7VrqQ/JHh4b8CusNy7aQS/snuXv/UpQy2m9F7gHDObBTwPrBh+gqQpwNeAdjM7BxgJfKnGmIH4wkL+rrUFajGlP25mQ+HbrQTOxihGAb8gaRRwIiXcj0no7j8QW9i8tlqo0ZRexO8C3z3uJLMDwL3APuAV4E0ze7zaYAvcGiO3VIG8tlqo0ZQOIKkTGCIwph9DaGe9CpgOnAaMlXRNVAVJTOlxd/jJQ96LctRkSg9X7X0WWGLRW2h/BnjRzA6Z2f8BDwMXlagjlik9Th5H4YWF2kzplwO3AVea2TslTt8HzJN0ogLj86XAc7UEXOmJj8jnPW0UtZjS9wBjCPY8ANhqZkvDdbrrzGyRmW2T9CDwQ4Kuu58w1X1WeGE/ohZT+owS5Q8Ci4re30GJjS3SJs8j4yhafoaqmDyPjKNwSlzPsXhxHcYpceM6MfKCU+I2+x7y9cYpcT3H4sV1GC+uw3hxHcY5cb3l5iNaTtyZp46tWMYLHNBy4vbeuiBWuVl3bM42kBag5cQFGBGVl24YR947mn0gTU5Lirv6i/nYgKJWWlLcjjlTmH/mhEaH0fS0pLjg1g7VWVFLpvR7JO0Os6U/IunkEueeLOnBsOxzkrwqdSJTU3rIXwGbzewsAkdHTR4qT3wyNaVLGg9cDPxjeM77UUtOqqHSJhR52fWrHJma0oEzgEPAP0nql7QudFDWTKVNKPKy61c5MjWlExjwzge+bWZzgJ8Dy6MqSDtTuid7U/p+YL+ZbQvfP0ggdlQdPlN6ymRqSjeznwAvh0m3ITCl/yiVyD0VidNyJwPfk7QD+AHQY2abgb8BxhGY0gck/T2ApNMkbSo6/w+ADZJ2ArOBP0/1F5TA+6nqY0ofANqjymaJ91O18AxVnlIOVUvLihsn5VBeNmQsRcuKC5UnKvKyIWMpWlpcP1FRnpYW11OelhfXD6xK0/LiVhpYrezeVadImo+WF7cS67fuo7v/QKPDaAjOiwuwbONALmesciEuBDNWedvUwglx4w6qhixfhnUnxL2741xOGBnDzBySlxbshLgAu7sWVS4UMmT5mJp0RlwIssaNitmA8zA16ZS4AHu+tTjWYrE8kLlvOSw7MjTIPZpW4OXovXWBdz9SH98ywC3U2a/cMWdK7qcmM0+mLel0YDGwrtq6qiVuwm1Xydq3DHAf8CfET5OcCnmeUy6QdTLtzwKvmdn2ShWk7VvOe6uF7H3L84Erw91NvgN8WtL6EnXU1bechxF11r7lFWZ2upm1EexK8l9mFpkGv97cdMnMRoeQOfXwLTclyxJsgtGqZO5bLjq+BdiSOMIqmTxudO43SXZuhqqAT6ztsLiQj0FTOZwWN27OKldxWty848V1GGfF9fvqxtw/t1Xo7j/AbQ/t5L2huk5jNy0tL64XtDQtLW6SDZKHEyc5aKvTstfcJBskR5GH5KAtK24tc8PXzJuWi+WfLdktn9VZ/XOJ+66enQthoQXFPatzE+8ejXp0XJ75Z07IXabXlhJ3xooehhLoes28abFyZ7hKy4ibRFi/pXlAS4ibZKbJ+5U/IlNTuqSpkv47TKL9rKRbkgY4PYGw88+ckJvBUhyyNqUPAX9kZr8KzCNwTp4dt8Ila58i7iV2/JiRuRswVaLqbtnMHi96uxX4fESZV4BXwtdvSXoOmELM5J5JFmsdee9oye571Ahx7xfOy12rrocpHQBJbcAcYFu5cgXSXEM79IGxbOMA05f35Co/RtbJtAtlTgIeApaZ2ZESZY4xpSe55YmLQa5EVrSXvMwJ0jeAt83s3tCUvhS4tJR3WdLHgEeBx8xsdZw62tvb7fXPfDNRXGkwQsGccyt135K2F42Djv2skrihEX1EeM0cSzCQujP8eDXwm2YWuf5DkoB/Bg6b2bK4ATdK3Cgmjxvd1E7KcuJmbUqfD1xLsIxkIPyLld8g7gr5rHn1rfdpW97TkgvLEnfL9aC9vd36+voSTzdmTTNOZ9bULTeCgri1sHD1lkyypTfb1Gat3XJL0nvrAgZX5Ts/hrPiFiiInNaunXO7elP5nnrQEg8O0qDU1GTS7ruVFpc5e82thbhPoZrBAJDLa249eHLv4URPreqNFzeCJM+EjeZNFurFjaCa6cdmbMFe3BIkHV0bzSewF7cEG264sCqBm+lWyYtbhg03XMjgqsVMHjc69jnNdKvkxY3Bts6FiURulgGWFzcB2zoXxs7I3ra8p+FPk7y4CdndtShRyv31W/fR1iDnhxe3CpKk3C+wbONA3VPve3GrpBrz+5N7D9dV4MwzpUu6XNL/StojaXmawTeSjjlTEo2iCxSmLOvRTWdqSpc0EvhbAtfk2cCXk5jSm51tnQurErheLsxMTekEqXv3hPkjkfQd4CpimtJbgW2dC+nuP1DVYvCCyFHnpmHpydqUPgV4uej9/vCYU3TMmcLgqsUMrlqc2r4KhVF2LcRtufPN7KCkUwncjrvN7AmoaEqPumeIfIAc/k9zI8C0aa278cTdHedyd8e5qU1kRH1P3OfIWWdK3w9MLXp/OnCwRB11zZSeNVka6eKOujPNlA48DcyUNF3SaIJs6f8R8ze0PEnnpZMQZ5FcnG55MvBIsHiAUcADZrZZ0h5gDEE3DbDVzJZKOg1YZ2aLzGxI0s3AY8BI4H4ze7a6n9OaFFYrzO3qTf2hQqWuP/NM6Wa2CWj6tPhZUxB5ydqn6raPYG7cj81CqYFQtVl6yuGnH5uE3V2LUs/n4VtuE9ExZ8px/q1abql8y21yyt1SVbrd8i23Baj2ntm3XIfx4jqMF9dhvLgO48V1GC+uw3hxHaYpF19LOgS8lPLXTgReT/k7m6HuT5hZ5APwphQ3CyT1lVqB7mrdvlt2GC+uw+RJ3DV5qzs319w8kqeWmztaXlxJnyzKCDsg6YikZcPKLAnXNO2U9H1J5xV9dtw6qJTrXiDpzaIytxd9lu06KjNz5o/AYfkTgnu/4uMXAaeEr68AthV9NghMzLDuBcCjJcrvBc4ARgM7gLPT/Pdo+ZY7jEuBvWZ2zASImX3fzN4I324lMMfXpe4yfLiOyszeBwrrqFLDNXG/BPxbhTK/x7Hrmiqtg0qj7gsl7ZD0XUmfCo9lv46q0V1pil3yaIIpvsllylwCPAd8vOjYaeF/TyXoGi9Os25gPHBS+HoR8EL4+gsE5v1CuWuBv/bdcjRXAD80s1ejPpQ0C1gHXGVmPy0ctxLroNKq28yOmNnb4etNwMckTSTBOqpqcUncL1OiW5Q0DXgYuNbMni86HrkOKuW6fyncyANJFxD8m/+UeqyjanR3mlKXfGL4D/aLRceWAkvD1+uAN4CB8K8vPH4GQVe8A3gW6Myg7pvD795BMJi7qKjcIoKsBHurqbvSn5+hchiXumXPMLy4DuPFdRgvrsN4cR3Gi+swXlyH8eI6zP8Df2Ov9h2br1kAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "some_track_id_1 = track_df['track.id'].unique()[10]\n", + "some_track_1 = track_df[track_df['track.id'] == some_track_id_1]\n", + "some_track_1.plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "bx = some_track_1['Speed.value'].plot()\n", + "bx.set_title(\"Speed\")\n", + "bx.set_ylabel(some_track_1['Speed.unit'][0])\n", + "bx" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Interactive Map\n", + "The following map-based visualization makes use of folium. It allows to visualizate geospatial data based on an interactive leaflet map. Since the data in the GeoDataframe is modelled as a set of Point instead of a LineString, we have to manually create a polyline" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 47, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import folium\n", + "\n", + "lats = list(some_track['geometry'].apply(lambda coord: coord.y))\n", + "lngs = list(some_track['geometry'].apply(lambda coord: coord.x))\n", + "\n", + "avg_lat = sum(lats) / len(lats)\n", + "avg_lngs = sum(lngs) / len(lngs)\n", + "\n", + "m = folium.Map(location=[avg_lat, avg_lngs], zoom_start=7)\n", + "folium.PolyLine([coords for coords in zip(lats, lngs)], color='blue').add_to(m)\n", + "m" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Visualisation of another single track using Folium" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
" + ], + "text/plain": [ + "" + ] + }, + "execution_count": 46, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import folium\n", + "\n", + "lats = list(some_track_1['geometry'].apply(lambda coord: coord.y))\n", + "lngs = list(some_track_1['geometry'].apply(lambda coord: coord.x))\n", + "\n", + "avg_lat = sum(lats) / len(lats)\n", + "avg_lngs = sum(lngs) / len(lngs)\n", + "\n", + "Q = folium.Map(location=[avg_lat, avg_lngs], zoom_start=7)\n", + "folium.PolyLine([coords for coords in zip(lats, lngs)], color='blue').add_to(Q)\n", + "Q" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Example: Visualization with pydeck\n", + "#### for one track" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The pydeck library makes use of the basemap tiles from Mapbox. In case you want to visualize the map with basemap tiles, you need to register with MapBox, and configure a specific access token. The service is free until a certain level of traffic is esceeded.\n", + "\n", + "You can either configure it via your terminal (i.e. `export MAPBOX_API_KEY=`), which pydeck will automatically read, or you can pass it as a variable to the generation of pydeck (i.e. `pdk.Deck(mapbox_key=, ...)`." + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel_launcher.py:4: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame.\n", + "Try using .loc[row_indexer,col_indexer] = value instead\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n", + " after removing the cwd from sys.path.\n", + "C:\\ProgramData\\Anaconda3\\lib\\site-packages\\ipykernel_launcher.py:5: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame.\n", + "Try using .loc[row_indexer,col_indexer] = value instead\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n", + " \"\"\"\n" + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "'C:\\\\Users\\\\Edwige\\\\Desktop\\\\tracks_muenster.html'" + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import pydeck as pdk\n", + "\n", + "# for pydeck the attributes have to be flat\n", + "some_track['lat'] = some_track['geometry'].apply(lambda coord: coord.y)\n", + "some_track['lng'] = some_track['geometry'].apply(lambda coord: coord.x)\n", + "vis_df = pd.DataFrame(some_track)\n", + "vis_df['speed'] = vis_df['Speed.value']\n", + "\n", + "# omit unit columns\n", + "vis_df_cols = [col for col in vis_df.columns if col.lower()[len(col)-4:len(col)] != 'unit']\n", + "vis_df = vis_df[vis_df_cols]\n", + "\n", + "layer = pdk.Layer(\n", + " 'ScatterplotLayer',\n", + " data=vis_df,\n", + " get_position='[lng, lat]',\n", + " auto_highlight=True,\n", + " get_radius=10, # Radius is given in meters\n", + " get_fill_color='[speed < 20 ? 0 : (speed - 20)*8.5, speed < 50 ? 255 : 255 - (speed-50)*8.5, 0, 140]', # Set an RGBA value for fill\n", + " pickable=True\n", + ")\n", + "\n", + "# Set the viewport location\n", + "view_state = pdk.ViewState(\n", + " longitude=7.62968338012695,\n", + " latitude=51.96034447467065,\n", + " zoom=13,\n", + " min_zoom=8,\n", + " max_zoom=15,\n", + " pitch=40.5,\n", + " bearing=-27.36)\n", + "\n", + "r = pdk.Deck(\n", + " width=200, \n", + " layers=[layer], \n", + " initial_view_state=view_state, mapbox_key= 'pk.eyJ1IjoibTIwMTkwNjQ5IiwiYSI6ImNrOTJzZTN4aDA2d2UzZnBnYWJsdWJuMzEifQ.-D3TfGOYZdjqFZrG8qlWhA'\n", + ")\n", + "r.to_html('tracks_muenster.html', iframe_width=900)\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "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.4" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +}