Skip to main content

Data Visualization and Report Building

Project description

pybloqs

PyBloqs is a flexible framework for visualizing data and automated creation of "good enough" reports.

CircleCI PyPI ReadTheDocs Coverage Status


PyBloqs in use in ipython notebook

Sometimes all you want is a quick and easy way to generate a static report. No bells, no whistles, no server setup and no network permissions. Just a PDF, html file or even a PNG.

PyBloqs is the simple solution for creating such data-rich reports.

It works with Pandas, matplotlib and highcharts and more. See your blocks in a notebook, in the browser, or as an image, and easily share them via the filesystem or email!

PyBloqs creates atomic blocks containing text, tables (from data frames), plots (matplotlib, plotly or highcharts) or images. All blocks can be styled with CSS. Each block can be created and displayed separately for fast development turnover. Lists of blocks can be stacked together to form reports. Reports can be displayed as HTML in the browser or exported in a variety of formats (including HTML, PDF, SVG, PNG).

Quickstart

Install PyBloqs

$ pip install pybloqs

See the documentation for further installation instructions.

Using PyBloqs

Please consult the user guide for more in-depth usage.

from pybloqs import Block, HStack, VStack
import pandas as pd
from matplotlib import pyplot as plt

text_block = Block('This is a text block', styles={'text-align':'center', 'color':'blue'})
text_block.show()

df = pd.DataFrame([[1., 2.],[3.,4.]], columns =['a', 'b'])
table_block = Block(df)
table_block.show()

plot_block = Block(plt.plot(df['a'], df['b']))
plot_block.show()

plot_and_table = HStack([plot_block, table_block])
report = VStack([text_block, plot_and_table])
report.show()
report.save('report.pdf')

Configuration

You can specify per-user default parameters in a yaml-formatted file ~/.pybloqs.cfg. See the configuration section of the documentation for more details.

Requirements

Please see pyproject.toml for a list of dependencies, and the installation guide for details on optional dependencies.

Acknowledgements

PyBloqs has been under active development at Man AHL since 2013.

Original concept and implementation:

Tom Farnbauer

Contributors:

Dominik Christ Barry Fitzgerald Wilfred Hughes James Munro Bogdan Cozmaciuc Dave Jepson Jason Matthews Rhodi Richards Doug Bruce Jonathan Nye Matthew Dodds Han Wei Teo Manjunath Goudreddy Edwin Flores jamesoliverh Romain Morotti Robert Spencer Radu Andra James Hylands Kristof Szabo-Strell Jingwei Song Qiuyan Ge and many others at Man Group and elsewhere...

Contributions welcome!

License

PyBloqs is licensed under the GNU LGPL v2.1. A copy of which is included in LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pybloqs-1.4.2.tar.gz (451.9 kB view details)

Uploaded Source

Built Distribution

pybloqs-1.4.2-py3-none-any.whl (202.1 kB view details)

Uploaded Python 3

File details

Details for the file pybloqs-1.4.2.tar.gz.

File metadata

  • Download URL: pybloqs-1.4.2.tar.gz
  • Upload date:
  • Size: 451.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.0

File hashes

Hashes for pybloqs-1.4.2.tar.gz
Algorithm Hash digest
SHA256 9fee6383cd184a2562b35edf0397981d84bedbf6810746ea39d40dd12fb15e71
MD5 5e6ba744805841257c8b857ae9e6c8de
BLAKE2b-256 882f29d4d20c0b71c633979c437e205b017e0558274cbda6af1f05e55efa53e4

See more details on using hashes here.

File details

Details for the file pybloqs-1.4.2-py3-none-any.whl.

File metadata

  • Download URL: pybloqs-1.4.2-py3-none-any.whl
  • Upload date:
  • Size: 202.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.0

File hashes

Hashes for pybloqs-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9202d5850e5e378853e7667e0ae5392c365bee549453091953521006176b9ad0
MD5 ac04ac25aeab9912f9fc24524d2060e0
BLAKE2b-256 b6c3e189021106f3ef475829a317c17752c34eabc826f32196778760ca2d41e1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page