问题描述
在 Python 中,使用 Matplotlib,如何绘制带有 empty 圆圈的散点图?目标是在 scatter() 已经绘制的 一些 彩色圆盘周围绘制空圆圈,以便突出显示它们,理想情况下无需重新绘制彩色圆圈.
我试过facecolors=None,没有用.
解决方案
来自 关于markeredgecolor和markerfacecolor的使用.
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 scatter(), so as to highlight them, ideally without having to redraw the colored circles.
I tried facecolors=None, to no avail.
解决方案
From the documentation for scatter:
Optional kwargs control the Collection properties; in particular: edgecolors: The string ‘none’ to plot faces with no outlines facecolors: 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') plt.show()
Note: For other types of plots see this post on the use of markeredgecolor and markerfacecolor.