Using Glue Without Writing Code: GUI and Python Workflows

Updated

Yes — you can use Glue entirely through its graphical application and never type a line of code. Glue is a Python library for exploring relationships within and among related datasets, and it is designed with "data-hacking" workflows in mind, so it supports both a pure-GUI path and several code-centric paths. The right choice depends on whether you want to click through visualizations or script your data input, cleaning, and analysis.

What Glue Is

Glue is a Python library to explore relationships within and among related datasets. Its main features include:

  • Linked statistical graphics — create scatter plots, histograms, and images (2D and 3D) of your data. Glue focuses on the brushing and linking paradigm, where selections in any graph propagate to all others.
  • Flexible linking across data — Glue uses the logical links that exist between different datasets to overlay visualizations of different data and to propagate selections across datasets. These links are specified by the user and are arbitrarily flexible.
  • Full scripting capability — Glue is written in Python and built on top of standard scientific libraries (Numpy, Matplotlib, Scipy). Users can integrate their own Python code for data input, cleaning, and analysis.

Ways to Use Glue

Glue blurs the boundary between GUI-centric and code-centric data exploration. The documentation lists these usage paths:

Approach What you do Code required
Graphical application only Use the Glue application as is None
Built-in IPython terminal Interact with Glue via the IPython terminal built into the application Some
Send data from Python Send NumPy arrays or Pandas DataFrames to Glue for exploration from a Python or IPython session Some
Customize/hack your setup Use config.py files Yes

Customization via config.py

If you do want to extend Glue, customization and hacking are handled through config.py files. The documented capabilities include:

  • Automatically loading and cleaning data before starting Glue
  • Writing custom functions to parse files in your favorite file format
  • Writing custom functions to link datasets
  • Creating your own data viewers

Developing and Embedding

Beyond day-to-day use, it is also possible to develop your own plugin packages for Glue that you can distribute to users separately, and you can make use of the Glue framework in your own application to provide data linking capabilities.

Choosing Your Path

  • Choose the pure GUI if you want to explore data visually through scatter plots, histograms, and images without writing code, and you are working with data Glue can already read.
  • Choose the built-in IPython terminal if you want to stay inside the application but still run Python interactively.
  • Choose sending NumPy arrays or Pandas DataFrames if your data already lives in a Python or IPython session and you want to hand it to Glue for exploration.
  • Choose config.py customization if you need automatic loading/cleaning, custom file parsers, custom linking functions, or your own data viewers.

Where to Go Next

The documentation is organized into Getting started, Using the Glue application, Interacting with data from Python, Domain-specific guides, Customizing/Hacking Glue, Advanced customization, Getting help, The Glue architecture, Developing Glue, Acknowledging glue, Publications, and API. For demos, the documentation points to a videos page, and you can follow the project on Twitter for previews of upcoming functionality. A comparison table is also available if you want to see how Glue compares with other open-source and commercial data visualization solutions.