mirror of
https://github.com/KevinMidboe/tableprint.git
synced 2025-10-29 01:40:17 +00:00
66 lines
2.2 KiB
ReStructuredText
66 lines
2.2 KiB
ReStructuredText
==========
|
|
Tableprint
|
|
==========
|
|
|
|
About
|
|
-----
|
|
Tableprint is a library for printing out numerical data in Ascii formatted tables. Check it out on `github`. You can use it to print single rows of data at a time (useful for printing ongoing computation results).
|
|
|
|
.. _Github: https://github.com/nirum/tableprint/
|
|
|
|
Installation
|
|
------------
|
|
Using ``pip``:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ pip install tableprint
|
|
|
|
Quickstart
|
|
----------
|
|
Tableprint offers two functions that print a table directly,
|
|
``tableprint.table`` and ``tableprint.dataframe``. The first takes a numpy array and a list of
|
|
headers, whereas the second takes a pandas DataFrame as input. For example, you can do the following:
|
|
|
|
.. code-block:: python
|
|
|
|
>>> tableprint.table(np.random.randn(10, 3), ['A', 'B', 'C'])
|
|
|
|
If you want to append to a table on the fly, you can use the functions ``tableprint.header``,
|
|
``tableprint.row``, and finally ``tableprint.bottom``. These functions return a formatted string
|
|
given a list of headers, an array of data, and a number of columns, respectively. For example
|
|
|
|
.. code-block:: python
|
|
|
|
>>> print(tableprint.header(['A', 'B', 'C']))
|
|
>>> for ix in range(10):
|
|
|
|
# insert time-intensive data collection here
|
|
data = np.random.randn(3)
|
|
|
|
# print data to stdout
|
|
print(tableprint.row(data), flush=True)
|
|
|
|
>>> print(tableprint.bottom(3))
|
|
|
|
Sometimes you just want to print a fancy string but without any numbers. In that case, you can use the ``tableprint.banner`` function:
|
|
|
|
.. code-block:: python
|
|
|
|
>> tableprint.banner("Hello, World!")
|
|
|
|
All of these functions take two optional keyword arguments, a ``width`` that defines the width of each column and a ``style`` that specifies
|
|
what unicode or ascii characters to use to build the table. The available styles are: ``round`` (default), ``fancy_grid``, ``grid``, ``clean``, and ``block``.
|
|
|
|
API
|
|
---
|
|
.. autofunction:: tableprint.table
|
|
.. autofunction:: tableprint.TableContext
|
|
.. autofunction:: tableprint.dataframe
|
|
.. autofunction:: tableprint.banner
|
|
.. autofunction:: tableprint.header
|
|
.. autofunction:: tableprint.row
|
|
.. autofunction:: tableprint.top
|
|
.. autofunction:: tableprint.bottom
|
|
.. autofunction:: tableprint.humantime
|