Marple Docs
  • Introduction
  • Marple Insight
    • Welcome
      • What is Marple Insight?
      • FAQ
      • Feedback
      • Release Notes
      • Roadmap
    • Setup and Configuration
      • Data connection
        • Supported Databases
          • Azure Data Explorer (ADX)
          • Microsoft Fabric
          • TimescaleDB & PostgreSQL
          • Mireo Spacetime
          • InfluxDB (Beta)
        • Connection configuration
          • Required Queries
          • Optional Queries
          • Templating
      • Deployment
        • Infrastructure
        • Identity Providers
        • Hardware
      • API
      • Python SDK
    • User Manuals
      • Data Library
      • Visualisation
        • Add Data Sets
        • Signal List
        • Functions
        • Plot types
          • Time Series
            • Signal Settings
            • Limits and Stacking
            • Zooming
            • Cursors
            • Text data
          • Scatter
          • Map
          • Frequency (FFT)
          • Aggregates
        • Mouse Actions
        • Tabs
        • Reorganise Plots
        • Compare data
        • Realtime
        • Export image
      • Motorsport Package
      • Flight Testing Package
      • Projects
      • Sharing
      • Team and accounts
        • Workspaces
        • Account Types
      • Keyboard Shortcuts
  • Marple Files
    • Welcome
      • What is Marple Files?
      • Quick Start
      • FAQ
      • Release Notes
    • User Manuals
      • Data
        • File Types
        • Time Precision
        • Data Points
        • Upload Data
        • Organise Data
        • Influx DB
      • Visualisation
        • Overview
        • Plot types
        • Mouse & Keyboard
        • Calculated Signals
        • Overlay Data Sets
        • Projects
        • Annotations
      • Analysis
        • Metric Builder
        • SQL Editor
        • Marple AI (GPT)
      • Reporting
        • Create Reports
        • View Reports
        • Share Reports
        • From data library to reports
      • Sharing and Accounts
        • Sharing
        • Team
        • Settings
      • For developers
        • API Access Tokens
        • API Guide
        • Python
Powered by GitBook
On this page
  • What you need to know
  • Why we use different rounding - the technical side
  1. Marple Files
  2. User Manuals
  3. Data

Time Precision

All about your logging frequency

PreviousFile TypesNextData Points

Last updated 3 months ago

In Marple, we round time input up to 1ns, which results in a supported precision of at most 1GHz.

In practice, we do not support precision up to 1ns in every case, this depends on what your time input looks like.

What you need to know

Marple expects timestamps to be uploaded in seconds. You should be aware that your timestamps might lose some precision due to rounding.

We consider two different ways of logging time, which will result in a different rounding precision:

  • Timestamps start from 0 (or another small offset) e.g. your timestamps look like 0.001, 0.002, 0.003,... In this case, timestamps are rounded at 1ns (1e-9s), resulting in a supported logging rate of 1GHz.

  • Timestamps are logged as epoch dates e.g. your timestamps look like 1693984725.15, 1693984725.20, 1693984725.25,... In this case, timestamps are rounded at 0.1µs (1e-7s), resulting in a supported logging rate of 10MHz.

In case your system logs timestamps as epoch dates, but you do require a precision up to 1ns, you can set an offset to subtract from your time input when importing your data. This way, you can let your timestamps start from 0 instead in Marple and get higher precision.

Why we use different rounding - the technical side

The difference in allowed precision is caused by Marple using floating points to represent timestamps when visualising your data.

Floating point numbers work by representing real numbers as a fraction (mantissa) and an exponent, both in binary notation. The mantissa represents the significant digits of the number and the exponent represents the magnitude of the number. The binary representation allows for efficient computation of arithmetic operations on real numbers, but can also lead to rounding errors due to the finite precision of the representation.

You can think of it as if there is a limit to the number of significant digits a number can have. 1693984725.15 has 12 significant digits, where 0.15 only has 2.

Set an offset in the import settings