The following page can help you choose which visualization is most appropriate for your project. While this may not be exhaustive, we strive to provide comprehensive guidelines to help you build effective and successful visualizations. This page will be regularly updated, so please check back often for the latest information and resources.
Arc DiagramUses arcs to visualize connections between nodes placed on a one-dimensional axis. Goal: Relationship Data Type: Categorical Best For: Visualizing the relationship between nodes. How To: Python (arcplot), R (arcdiagram), Tableau |
||
Area ChartEssentially a line chart with the area between the line and the x-axis filled in. Goal: Trend Data Type: Continuous Best For: Visualizing trends over time and the magnitude of change. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Bar ChartValues are indicated by the length of rectangular bars, with each bar corresponding to a measured group. Goal: Comparison Data Type: Categorical or Discrete Best For: Comparing quantities across different categories, especially when there are many bars to plot, or when dealing with longer category names. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Box PlotAlso known as box and whisker plot, it displays the distribution of a dataset based on a five-number summary (i.e., min, Q1, median, Q3, max) Goal: Comparison, Distribution Data Type: Continuous Best For: Showing the spread and skewness of data along with outliers. Multiple boxplots are useful for comparing distribution across groups or categories. How To: Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Bubble ChartEssentially a scatter plot with one or two additional dimensions represented by bubble size and color. Goal: Comparison, Distribution, Relationship Data Type: Continuous Best For: Visualizing the relationship between three or four variables or comparing data points based on those variables. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Bubble MapA map visualization where data is represented by varying size of bubbles in proportion to the value, enabling comparison of data points across different regions. Goal: Comparison, Distribution, Geospatial Data Type: Categorical or Continuous Best For: Visualizing the distribution and comparing the magnitude of values across different locations. How To: Google Sheets, Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Butterfly ChartAlso known as a tornado chart or diverging bar chart, a butterfly chart places two bar charts back-to-back, sharing a common category axis. Goal: Comparison, Distribution Data Type: Categorical or Discrete Best For: Comparing two groups across multiple categories. It is frequently used to compare populations across groups, such as age and sex, creating a population pyramid. How To: Microsoft 365, Python (Matplotlib), Python (Plotly), R (ggplot2), Tableau |
||
Chord DiagramA circular chart that shows relationships between data points using arcs. Goal: Flow, Relationship Data Type: Categorical Best For: Visualizing complex relationships and flows between different entities. How To: Python (Bokeh), Python (Plotly), R (Plotly), R (circlize), Tableau |
||
Choropleth MapA map visualization where data is represented by varying colors or shades in proportion to the value, enabling comparison of data points across different regions. Goal: Comparison, Distribution, Geospatial Data Type: Categorical or Continuous Best For: Visualizing the intensity of a variable across geographic area. How To: Google Sheets, Microsoft 365, Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Column ChartEssentially a bar chart oriented vertically. Goal: Comparison, Distribution Data Type: Categorical or Discrete Best For: Comparing quantities across different categories, especially when dealing with shorter category names. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Density PlotEssentially a smoothed version of a histogram. Goal: Comparison, Distribution Data Type: Continuous Best For: Visualizing the distribution of a dataset. Multiple density plots are useful for comparing distribution across groups or categories. How To: Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Donut ChartA variation of a pie chart, with a hole in the center. Each segment represents a part of the whole, and the size of each segment is proportional to its value. Goal: Composition Data Type: Categorical Best For: Showing parts of a whole with space for additional information in the center. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Dumbbell PlotDisplays changes between two data points for each category using circles connected by a line, resembling a dumbbell, to illustrate the difference between the two values. Goal: Comparison, Trend Data Type: Categorical or Continuous Best For: Highlighting changes or differences between two points in time for multiple categories. How To: Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Funnel ChartShows a process that leads to a result, with each stage represented as a proportion of the total. Goal: Composition, Flow Data Type: Categorical or Continuous Best For: Visualizing stages in a process and identifying potential bottlenecks. How To: Google Sheets, Microsoft 365, Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Gauge ChartA circular chart that represents a single data point within a range. Goal: Comparison Data Type: Continuous Best For: Displaying a single value within a qualitative range. How To: Google Sheets, Microsoft 365, Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Heat MapValues are represented as colors in a matrix Goal: Comparison, Distribution Data Type: Categorical or Continuous Best For: Visualizing variations across two dimensions. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
HistogramA variation of bar chart that represents the frequency distribution of a dataset. Goal: Distribution Data Type: Continuous Best For: Visualizing the distribution of a continuous variable. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Line ChartDisplays information as a series of data points connected by straight line segments. Goal: Comparison, Trend Best For: Visualizing trends and changes over time, and comparing a few time-series data sets How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Network GraphRepresents relationships between nodes using edges. Goal: Relationship Data Type: Categorical Best For: Visualizing complex networks and relationships. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Pie ChartA circular chart divided into sectors, each representing a proportion of the whole. Each sector's angle and area are proportional to the value it represents. Goal: Composition Data Type: Categorical Best For: Showing parts of a whole (add up to 100%) in a simple and easily understandable manner. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Radar ChartAlso known as a polar area chart or spider chart, it displays data in a polygonal shape with each axis representing a different category. The distance from the center to the data point represents the value. Goal: Comparison Data Type: Categorical or Continuous Best For: Comparing multiple variables in a visually engaging way, especially when the categories are not directly comparable. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Radial Bar ChartAlso known as a circular bar chart. Essentially a bar chart plotted on a polar coordinate system instead of a Cartesian one. Goal: Comparison Data Type: Categorical or Discrete Best For: Comparing a set of categories where the radial layout can provide a more engaging visual. How To: Google Sheets, Microsoft 365, Python (Matplotlib), R (ggplot2), Tableau |
||
Sankey DiagramA type of flow diagram from one set values to another (nodes) connected with lines (links) Goal: Flow Data Type: Categorical Best For: Visualizing the distribution and movement of resources, a many-to-many mapping between two domains, or multiple paths through a set of stages. How To: Google Charts, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Scatter PlotA type of plot or mathematical diagram using Cartesian coordinates to display values for two variables. Each point represents an observation in the dataset, with the position determined by the values of the two variables. Goal: Comparison, Distribution, Relationship Data Type: Continuous Best For: Visualizing the relationship between two variables. How To: Google Sheets, Microsoft 365, Python (Matplotlib), Python (Plotly), R (Plotly), R (ggplot2), Tableau |
||
Sunburst DiagramA multilevel pie chart, where each level represents a hierarchical category. Each segment represents a category and its subcategories, radiating outward from the center. Goal: Comparison, Composition, Hierarchy Data Type: Categorical Best For: Visualizing hierarchical data and showing the contribution of each category to the total. How To: Microsoft 365, Python (Plotly), R (Plotly), Tableau |
||
Treemap ChartDisplays hierarchical data using nested rectangles. Each rectangle represents a category, and its size is proportional to the value. Subcategories are nested within the main categories. Goal: Comparison, Composition, Hierarchy Data Type: Categorical or Discrete Best For: Visualizing large amounts of hierarchical data in a compact and space-efficient manner. How To: Google Sheets, Microsoft 365, Python (Plotly), R (Plotly), Tableau |
Library Administration: 631.632.7100
Except where otherwise noted, this work by SBU Libraries is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.