tabloo


Nametabloo JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/bluenote10/tabloo
SummaryMinimalistic dashboard app for visualizing tabular data
upload_time2022-12-09 11:20:35
maintainer
docs_urlNone
authorFabian Keller
requires_python
licenseMIT
keywords table dataframe visualization plots dashboard
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Tabloo [![Build Status](https://github.com/bluenote10/tabloo/workflows/ci/badge.svg)](https://github.com/bluenote10/tabloo/actions?query=workflow%3Aci) [![license](https://img.shields.io/github/license/mashape/apistatus.svg)](LICENSE)

Minimalistic dashboard app for visualizing tabular data -- WIP.

![demo](/../examples/examples/basic_demo.gif)


## Installation

```sh
pip install tabloo
```


## Usage

### Embedded mode

Run tabloo from within Python on an instance of a Pandas DataFrame:

```python
# given a pandas dataframe `df`
import tabloo
tabloo.show(df)
```


### CLI mode

Run tabloo from the command line on a CSV file:

```sh
tabloo_cli my.csv
```

### Bring our own backend

Tabloo decouples the visualization frontend from the data backend.
You could drive the frontend by arbitrary data backends, i.e.,
instead of running from DataFrames, you may implement a backend accessing other data sources like databases.
This implies that backends can be implemented in any other language.
Currently the backend API is still under development and may change.
For now, the [flask backend](src_backend_python/tabloo/server.py) can serve as a reference implementation.


## Usage notes

Currently the "Filter" input element accepts `DataFrame.query()` expressions.
It handles expressions like:

```
# filter by specific values
SomeColumn == "some value"

# standard inequality operations are supported
SomeNumberColumn > 0

# it's possible to use advanced string conditions via `.str`
SomeStringColumn.str.len() < 10

# Combining conditions is possible with & | and or
ColumnA == 42 & SomeStringColumn.str.contains("substring")
```

Refer to documentation of [query()](https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#indexing-query) for more examples.

Note: Eventually the syntax may change into a Pandas agnostic syntax to simplify implementations in non-Pandas backends.



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/bluenote10/tabloo",
    "name": "tabloo",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "table,dataframe,visualization,plots,dashboard",
    "author": "Fabian Keller",
    "author_email": "pypi.20.fkeller@spamgourmet.com",
    "download_url": "https://files.pythonhosted.org/packages/e5/79/2bc7a2fdd7f11cd7b12bdcafc0e87133b72b833c4d1c10df6fe1452800c8/tabloo-0.1.0.tar.gz",
    "platform": null,
    "description": "# Tabloo [![Build Status](https://github.com/bluenote10/tabloo/workflows/ci/badge.svg)](https://github.com/bluenote10/tabloo/actions?query=workflow%3Aci) [![license](https://img.shields.io/github/license/mashape/apistatus.svg)](LICENSE)\n\nMinimalistic dashboard app for visualizing tabular data -- WIP.\n\n![demo](/../examples/examples/basic_demo.gif)\n\n\n## Installation\n\n```sh\npip install tabloo\n```\n\n\n## Usage\n\n### Embedded mode\n\nRun tabloo from within Python on an instance of a Pandas DataFrame:\n\n```python\n# given a pandas dataframe `df`\nimport tabloo\ntabloo.show(df)\n```\n\n\n### CLI mode\n\nRun tabloo from the command line on a CSV file:\n\n```sh\ntabloo_cli my.csv\n```\n\n### Bring our own backend\n\nTabloo decouples the visualization frontend from the data backend.\nYou could drive the frontend by arbitrary data backends, i.e.,\ninstead of running from DataFrames, you may implement a backend accessing other data sources like databases.\nThis implies that backends can be implemented in any other language.\nCurrently the backend API is still under development and may change.\nFor now, the [flask backend](src_backend_python/tabloo/server.py) can serve as a reference implementation.\n\n\n## Usage notes\n\nCurrently the \"Filter\" input element accepts `DataFrame.query()` expressions.\nIt handles expressions like:\n\n```\n# filter by specific values\nSomeColumn == \"some value\"\n\n# standard inequality operations are supported\nSomeNumberColumn > 0\n\n# it's possible to use advanced string conditions via `.str`\nSomeStringColumn.str.len() < 10\n\n# Combining conditions is possible with & | and or\nColumnA == 42 & SomeStringColumn.str.contains(\"substring\")\n```\n\nRefer to documentation of [query()](https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#indexing-query) for more examples.\n\nNote: Eventually the syntax may change into a Pandas agnostic syntax to simplify implementations in non-Pandas backends.\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Minimalistic dashboard app for visualizing tabular data",
    "version": "0.1.0",
    "split_keywords": [
        "table",
        "dataframe",
        "visualization",
        "plots",
        "dashboard"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "e317adfbbe064c25e719ca0c7eec5f46",
                "sha256": "e6520697f9ae79f2cd82a7f2795c4278c238c48d2f24414a6606dc8b423c4b21"
            },
            "downloads": -1,
            "filename": "tabloo-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e317adfbbe064c25e719ca0c7eec5f46",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 4054436,
            "upload_time": "2022-12-09T11:20:30",
            "upload_time_iso_8601": "2022-12-09T11:20:30.153351Z",
            "url": "https://files.pythonhosted.org/packages/b4/7f/726a7c951b69fc1ebfc070ac3c8bef6bc807ae662e1e181f9228b9194e6d/tabloo-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "bf644b81db7973422a83f0fdc52fbf29",
                "sha256": "7029e21a62b4fc398468a9cdbfa26b8ac8176d87507b20b78dacdf379b2bc5d4"
            },
            "downloads": -1,
            "filename": "tabloo-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "bf644b81db7973422a83f0fdc52fbf29",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 4024030,
            "upload_time": "2022-12-09T11:20:35",
            "upload_time_iso_8601": "2022-12-09T11:20:35.664604Z",
            "url": "https://files.pythonhosted.org/packages/e5/79/2bc7a2fdd7f11cd7b12bdcafc0e87133b72b833c4d1c10df6fe1452800c8/tabloo-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2022-12-09 11:20:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "bluenote10",
    "github_project": "tabloo",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "tabloo"
}
        
Elapsed time: 0.01910s