SciPy 2024

Great Tables for Everyone
07-11, 16:30–17:00 (US/Pacific), Room 316

Do you find yourself copying your data into Word, just to make a table? If this is you (and this was us) it’s both frustrating and prone to errors. And even though every aspect of a typical analysis can be scripted, it often turns out that the table-making part is elusive. We made Great Tables to enable complete publishing workflows. This Python package lets you easily generate publication-quality tables with the structure you want, many options for formatting values, and plenty of freedom for styling. Importantly, Great Tables closely integrates with Pandas and Polars DataFrames in order to handle a wide range of analyses.


In science (and many other disciplines), tables are important! Sure, plots are a pretty big thing but if you’re doing any type of data work, you’ll likely have a need to produce summary tables. You might need a such a table in a journal article, as part of a presentation, inside of an online book you’re working on, or possibly in other forms of publication. Despite this omnipresent need for summary table generation, there hasn’t been a whole lot of development on the Python side of things.

This is where Great Tables comes in. We’ve been developing this package to make it fun and easy to generate publication-quality tables. It’s always been a little sad to us that we had to split the data analysis portion of the work from the data publication task. To make life generally better for data work, we want to remove this barrier and unify the process of data analysis and data tabulation for presentation.

The Great Tables package provides a lot of power for structuring your table, formatting the data values, and styling every aspect of the table. This is all powered by an expressive grammar that makes table building a bit more straightforward. We do this by breaking a table down into ten highly-composable components you can mix and match to your hearts content. Having this framework makes it easier to reason about tables and their construction with the package.

This talk will provide a demonstration of Great Tables, showing how data can come alive in when in tabular form. We’ll use data from the fields of meteorology, chemistry, and the atmospheric sciences within our table-making examples. We’ll learn how the different components of a table (e.g., the column labels, the header, etc.) can be manipulated to best convey the data. We believe tables are worthy of being deemed data visualizations and we hope that Great Tables can become an indispensable tool in your data analysis workflow.

Rich is a software engineer that focuses on writing software packages focused on data analysis and data visualization workflows. Through this, he really wants to help people accomplish things that were difficult before. He’s been at Posit Software for six years and has been immensely enjoying his time there. Before that, he did many science-y things before switching into full-time open source development. As far as outdoor activities are concerned, Rich enjoys meeting up with friends and wandering through the many valleys and ravines of the Greater Toronto Area.