Skip to Main Content

Data Visualization

A guide to data visualization principles and techniques.


Selecting the right tool for data visualization often depends on the data type in question and the user's comfort level with coding. Fortunately, there are many options! While this list isn't an exhaustive overview of data visualization tools/software available (see here and here for more extensive coverage of visualization software/libraries), it can provide a starting point. 

Point and click options

There are a variety of reasons you may prefer a point-and-click interface for making data visualizations. The main issue to consider is what type of data you are working with, as many tools are specialized to work with certain data formats.


If your data is: mostly or all numeric (e.g., gross domestic product over time, species counts, coded survey data, etc.)


If your data is: raw text (e.g., newspaper articles, journal articles, any literature)


If you want general purpose templates:

Coding options

If you are working with a scripting language for other aspects of data analysis, you're in luck! You can often use the same software for everything from data cleaning to data visualization for both numeric and text data.

  • R 
    R is not only a standard statistical analysis tool, but also a powerful visualization platform. The ggplot2 package is the primary graphic-making package. There are also numerous packages meant to extend the functionality of ggplot2. From animations to maps to other advanced graphic options (check out shiny to make interactive plots!), these extension packages help make publication-worthy graphs. For those working with text data, the tidytext and tm packages are good options for cleaning, analyzing, and visualizing text data.
  • Python 
    Like R, Python has libraries to make impressive visualizations. While matplotlib is the main graphics library, there are additional Python libraries focused on visualization, including making interactive plots/charts, 3D images, maps, and more. (Read here for a more in-depth discussion of how the Python visualization libraries fit together.) When working with text data, the nltk and TextBlob libraries are useful for analysis and visualization.

Geospatial data

If your data is geospatial (vector, raster)

Image data

If your data is images (video, pictures)

GW Libraries • 2130 H Street NW • Washington DC