{ "cells": [ { "cell_type": "markdown", "id": "978a2678-08e4-4508-b6d2-76a4e76d4acf", "metadata": {}, "source": [ "# Using TrackFormat for Data Import\n", "\n", "In addition to the format-specific methods (`readFromCsv()`, `readFromGpx()`, and `readFromWkt()`), Tracklib provides a generic way to import track data using a `TrackFormat`.\n", "\n", "A `TrackFormat` describes the structure of the input data independently of the underlying file format. Once defined, data can be loaded using a single generic method:\n", "\n", "```python\n", "TrackReader.readFromFile(path, track_format)\n", "```\n", "\n", "A `TrackFormat` is a dictionary-like object that describes the layout of the input data. It gathers all import options into a single configuration, making them easier to reuse across multiple datasets.\n", "\n", "\n", "## Parameters\n", "\n", "### General\n", "- `ext`: `ext`: file format (`CSV`, `GPX`, or `WKT`). This parameter is mandatory and determines how files with the corresponding extension are read and written. The default value is `CSV`.\n", "\n", "### Coordinates\n", "\n", "- `id_E`: index (starting from 0) of the column containing the X coordinate (ECEF), longitude (GEO), or East coordinate (ENU).\n", "- `id_N`: index (starting from 0) of the column containing the Y coordinate (ECEF), latitude (GEO), or North coordinate (ENU).\n", "- `id_U`: index (starting from 0) of the column containing the Z coordinate (ECEF), height, or altitude.\n", "- `srid`: coordinate reference system of the input points (`ENU`, `Geo`, or `ECEF`).\n", "\n", "### Time\n", "\n", "- `id_T`: index (starting from 0) of the column containing the timestamp (either as Unix time or formatted according to `time_fmt`).\n", "- `date_ini`: reference date (epoch) used when timestamps are stored as elapsed time. Ignored if set to `-1`.\n", "- `time_unit`: unit of the timestamps (seconds, milliseconds, microseconds, or nanoseconds).\n", "- `time_fmt`: format string used to parse textual timestamps (see `ObsTime`).\n", "\n", "### CSV Parsing\n", "\n", "- `separator`: field separator. Predefined values are `c` (comma), `b` (blank space), and `s` (semicolon). Custom separators are also supported.\n", "- `header`: number of header lines to skip.\n", "- `cmt`: comment prefix. Lines starting with this character are ignored.\n", "- `doublequote`: if `True`, escaped double quotes are handled correctly.\n", "- `encoding`: text encoding of the input file (default: `\"utf-8\"`).\n", "- `no_data_value`: value indicating an invalid record, which will be skipped during import.\n", " \n", "### Analytical Features\n", " \n", "- `read_all`: if `True`, all remaining columns are imported as `AnalyticalFeature`s.\n", "\n", "### Track Identification\n", "\n", "- `id_user`: index of the column containing the user identifier (`-1` if not used).\n", "- `id_track`: index of the column containing the track identifier (`-1` if not used).\n", " " ] }, { "cell_type": "markdown", "id": "001d73c3-ef52-466e-ad77-73ee7f1beb85", "metadata": {}, "source": [ "## Complete CSV Example\n", "\n", "The following example shows how to load track data from a CSV file with:\n", "\n", "- coordinates in a geographic coordinate system,\n", "- timestamps stored in milliseconds since the Unix epoch,\n", "- a spatial filter that keeps only observations within a specified rectangular bounding box." ] }, { "cell_type": "code", "execution_count": 1, "id": "0f8b3964-1184-4432-be98-ad9004c1470a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Code running in a no shapely environment\n" ] }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "\n", "import os\n", "import sys\n", "\n", "# Import the Tracklib library\n", "import tracklib as tkl\n", "\n", "resource_path = '../../../data/mopsi/wgs84/'\n", "filepath = os.path.join(resource_path, '1412412627743')\n", "\n", "tkl.ObsTime.setReadFormat(\"4Y-2M-2D 2h:2m:2s\")\n", "initialDate = '1970-01-01 00:00:00'\n", "\n", "Xmin = 29.76\n", "Xmax = 29.81\n", "Ymin = 62.68\n", "Ymax = 62.70\n", "ll = tkl.ENUCoords(Xmin, Ymin)\n", "ur = tkl.ENUCoords(Xmax, Ymax)\n", "bbox = tkl.Rectangle(ll, ur)\n", "constraintBBox = tkl.Constraint(shape = bbox, mode = tkl.MODE_INSIDE, type=tkl.TYPE_CUT_AND_SELECT)\n", "s = tkl.Selector([constraintBBox])\n", "\n", "param = tkl.TrackFormat({'ext': 'CSV',\n", " 'id_E': 1,\n", " 'id_N': 0,\n", " 'id_T': 2,\n", " 'srid': 'Geo',\n", " 'time_ini': tkl.ObsTime.readTimestamp(initialDate),\n", " 'time_unit': 0.001,\n", " 'selector': s,\n", " 'separator': ' '})\n", "collection = tkl.TrackReader.readFromFile(filepath, param, verbose=False)\n", "collection.plot()" ] } ], "metadata": { "kernelspec": { "display_name": "Python (tracklib)", "language": "python", "name": "tracklib-env" }, "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.10.12" } }, "nbformat": 4, "nbformat_minor": 5 }