Skip to content

Minimalistic dashboard app for visualizing tabular data

License

Notifications You must be signed in to change notification settings

bluenote10/tabloo

Repository files navigation

Tabloo Build Status license

Minimalistic dashboard app for visualizing tabular data -- WIP.

demo

Installation

pip install tabloo

Usage

Embedded mode

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

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

CLI mode

Run tabloo from the command line on a CSV file:

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 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() for more examples.

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