In the event that you have very coarse-grained data with a lot of overlaps, scatterplots may not be suitable. For example, consider the following data and plot:
This is not uncommon for survey responses rating on a Likert or Likert-like scale. Clearly the scatterplot does not properly display the full data - it is not clear how dense each point on the graph is.
There are many alternatives to get around this issue - consider the visual variables discussed on this page!
A few possibilities are listed below:
Using transparency
A quick and easy way is to change the transparency of the points. In Google Sheets, you can do this in the Customize tab:
Note that transparency is also termed "alpha" in some software.
The "Bubble Chart" option in Excel can do this automatically:
However, it is good to know how to manipulate scatterplots to achieve this result manually as well.
Using size and/or colour
The number of points can also be encoded using size and/or colour.
In Google Sheets, bubble charts take 5 pieces of info: data point label, x position, y position, bubble size, and bubble colour. With some processing (e.g. "=filter(...)" or other count methods) you can obtain a breakdown of the number of points for each combination of x and y, and then produce a bubble chart accordingly:
Another way to make use of colour is to create a heatmap. One way to do it is to use conditional formatting.
First, you have to generate the distribution of data. See the following spreadsheet as an example for using Google Sheet's "Filter" function:
Once the counts for each category of nominal data has been obtained, you can use conditional formatting to create a heatmap.
Using jitter
Finally, it is also possible to introduce some random jitter. This is a way to simulate 'transparency'.
You can do it by adding a small random amount to each quantity:
This is often not an ideal method, but it is good to be aware of the possibility.
Sometimes, you may have a very large number of datapoints that overlap.
In this case, a good first step would be to try adjusting transparency and shape:
However, in some cases, this may not improve clarity much. In that case, you may want to consider methods for aggregation, such as binning or clustering.