EOL EOL - 2 months ago 26
Python Question

How to do a scatter plot with empty circles in Python?

In Python, with Matplotlib, how can a scatter plot with empty circles be plotted? The goal is to draw empty circles around some of the colored disks already plotted by

, so as to highlight them, ideally without having to redraw the colored circles.


From the documentation for scatter:

Optional kwargs control the Collection properties; in particular:

        The string ‘none’ to plot faces with no outlines
        The string ‘none’ to plot unfilled outlines

Try the following:

import matplotlib.pyplot as plt 
import numpy as np 

x = np.random.randn(60) 
y = np.random.randn(60)

plt.scatter(x, y, s=80, facecolors='none', edgecolors='r')

example image

Note: For other types of plots see this post on the use of markeredgecolor and markerfacecolor.