foxplot


Namefoxplot JSON
Version 1.0.0 PyPI version JSON
download
home_pageNone
SummaryPlot time-series data from line-delimited JSON.
upload_time2024-10-30 16:43:51
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords json time series plot
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # foxplot

[![Build](https://img.shields.io/github/actions/workflow/status/stephane-caron/foxplot/ci.yml?branch=main)](https://github.com/stephane-caron/foxplot/actions)
[![Documentation](https://img.shields.io/github/actions/workflow/status/stephane-caron/foxplot/docs.yml?branch=main&label=docs)](https://stephane-caron.github.io/foxplot/)
[![Coverage](https://coveralls.io/repos/github/stephane-caron/foxplot/badge.svg?branch=main)](https://coveralls.io/github/stephane-caron/foxplot?branch=main)
[![PyPI version](https://img.shields.io/pypi/v/foxplot)](https://pypi.org/project/foxplot/)

Manipulate time series read from [MessagePack](https://msgpack.org/) or [newline-delimited JSON](https://en.wikipedia.org/wiki/JSON_streaming#Newline-delimited-JSON).

## Installation

```console
pip install foxplot
```

## Usage

The `foxplot` command-line tool starts in interactive mode by default to explore the input gathered in `data` (tab completion works: try `data.<TAB>`). Plot times series using the `fox.plot` function, for example:

```python
$ foxplot upkie_2023-05-03-103245.mpack
Python 3.8.10 (default, Mar 13 2023, 10:26:41)
Type 'copyright', 'credits' or 'license' for more information
IPython 8.0.1 -- An enhanced Interactive Python. Type '?' for help.

In [1]: fox.plot(data.observation.imu.angular_velocity)
```

This call opens a new tab in your browser with the desired plot. In this example, `angular_velocity` is a 3D vector, thus the plot will include three curves.

Check out the [documentation](https://stephane-caron.github.io/foxplot/) for more advanced examples, such as left and right axes or computing new series from existing ones.

## See also

- [mpacklog.cpp](https://github.com/upkie/mpacklog.cpp): library to log dictionaries to MessagePack files in C++.
- [mpacklog.py](https://github.com/upkie/mpacklog.py): library and command-line tools to log dictionaries to MessagePack files in Python.
- [rq](https://github.com/dflemstr/rq/): command-line tool to manipulate streams of records in various formats.
- [uplot-python](https://github.com/stephane-caron/uplot-python): plotting backend used in this project.
- [µPlot](https://github.com/leeoniya/uPlot): time-series plotting library, whose performance was a key enabler for this project.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "foxplot",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "St\u00e9phane Caron <stephane.caron@normalesup.org>",
    "keywords": "json, time, series, plot",
    "author": null,
    "author_email": "St\u00e9phane Caron <stephane.caron@normalesup.org>",
    "download_url": "https://files.pythonhosted.org/packages/d3/6d/be4da3abf1764c644bd381b8ab644d42cdd84b73e3f1968439de74064a4c/foxplot-1.0.0.tar.gz",
    "platform": null,
    "description": "# foxplot\n\n[![Build](https://img.shields.io/github/actions/workflow/status/stephane-caron/foxplot/ci.yml?branch=main)](https://github.com/stephane-caron/foxplot/actions)\n[![Documentation](https://img.shields.io/github/actions/workflow/status/stephane-caron/foxplot/docs.yml?branch=main&label=docs)](https://stephane-caron.github.io/foxplot/)\n[![Coverage](https://coveralls.io/repos/github/stephane-caron/foxplot/badge.svg?branch=main)](https://coveralls.io/github/stephane-caron/foxplot?branch=main)\n[![PyPI version](https://img.shields.io/pypi/v/foxplot)](https://pypi.org/project/foxplot/)\n\nManipulate time series read from [MessagePack](https://msgpack.org/) or [newline-delimited JSON](https://en.wikipedia.org/wiki/JSON_streaming#Newline-delimited-JSON).\n\n## Installation\n\n```console\npip install foxplot\n```\n\n## Usage\n\nThe `foxplot` command-line tool starts in interactive mode by default to explore the input gathered in `data` (tab completion works: try `data.<TAB>`). Plot times series using the `fox.plot` function, for example:\n\n```python\n$ foxplot upkie_2023-05-03-103245.mpack\nPython 3.8.10 (default, Mar 13 2023, 10:26:41)\nType 'copyright', 'credits' or 'license' for more information\nIPython 8.0.1 -- An enhanced Interactive Python. Type '?' for help.\n\nIn [1]: fox.plot(data.observation.imu.angular_velocity)\n```\n\nThis call opens a new tab in your browser with the desired plot. In this example, `angular_velocity` is a 3D vector, thus the plot will include three curves.\n\nCheck out the [documentation](https://stephane-caron.github.io/foxplot/) for more advanced examples, such as left and right axes or computing new series from existing ones.\n\n## See also\n\n- [mpacklog.cpp](https://github.com/upkie/mpacklog.cpp): library to log dictionaries to MessagePack files in C++.\n- [mpacklog.py](https://github.com/upkie/mpacklog.py): library and command-line tools to log dictionaries to MessagePack files in Python.\n- [rq](https://github.com/dflemstr/rq/): command-line tool to manipulate streams of records in various formats.\n- [uplot-python](https://github.com/stephane-caron/uplot-python): plotting backend used in this project.\n- [\u00b5Plot](https://github.com/leeoniya/uPlot): time-series plotting library, whose performance was a key enabler for this project.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Plot time-series data from line-delimited JSON.",
    "version": "1.0.0",
    "project_urls": {
        "Changelog": "https://github.com/stephane-caron/foxplot/blob/master/CHANGELOG.md",
        "Homepage": "https://github.com/stephane-caron/foxplot",
        "Source": "https://github.com/stephane-caron/foxplot",
        "Tracker": "https://github.com/stephane-caron/foxplot/issues"
    },
    "split_keywords": [
        "json",
        " time",
        " series",
        " plot"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "991707808c5568ff421a2acf17350564a737f98a4f60616b9bb22239aa99d2cc",
                "md5": "0b90c6ce5a46878a8ef9477e23553ee7",
                "sha256": "872744e967c5cc667473110799b71c2df3556c14431e4698a86f42de7fd8e550"
            },
            "downloads": -1,
            "filename": "foxplot-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0b90c6ce5a46878a8ef9477e23553ee7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 19382,
            "upload_time": "2024-10-30T16:43:50",
            "upload_time_iso_8601": "2024-10-30T16:43:50.300751Z",
            "url": "https://files.pythonhosted.org/packages/99/17/07808c5568ff421a2acf17350564a737f98a4f60616b9bb22239aa99d2cc/foxplot-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d36dbe4da3abf1764c644bd381b8ab644d42cdd84b73e3f1968439de74064a4c",
                "md5": "2a67e912e7b4aea1f6ae07e2f692dd5c",
                "sha256": "b864426003a6d9e78eebf1a17e6f0e2c56e0e0578d6a7cdd2aa4baa779398cfb"
            },
            "downloads": -1,
            "filename": "foxplot-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "2a67e912e7b4aea1f6ae07e2f692dd5c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 43903,
            "upload_time": "2024-10-30T16:43:51",
            "upload_time_iso_8601": "2024-10-30T16:43:51.845992Z",
            "url": "https://files.pythonhosted.org/packages/d3/6d/be4da3abf1764c644bd381b8ab644d42cdd84b73e3f1968439de74064a4c/foxplot-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-30 16:43:51",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "stephane-caron",
    "github_project": "foxplot",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "foxplot"
}
        
Elapsed time: 0.36814s