使用 Seaborn 散点图,如何将标记设置为空心圆而不是实心圆?
这是一个简单的例子:
import pandas as pd
import seaborn as sns
df = pd.DataFrame(
{'x': [3,2,5,1,1,0],
'y': [1,1,2,3,0,2],
'cat': ['a','a','a','b','b','b']}
)
sns.scatterplot(data=df, x='x', y='y', hue='cat')
Run Code Online (Sandbox Code Playgroud)
我尝试过以下方法但没有成功;其中大多数不会抛出错误,而是产生与上面相同的图。我认为这些不起作用,因为颜色是用hue参数设置的,但我不确定修复是什么。
sns.scatterplot(data=df, x='x', y='y', hue='cat', facecolors = 'none')
sns.scatterplot(data=df, x='x', y='y', hue='cat', facecolors = None)
sns.scatterplot(data=df, x='x', y='y', hue='cat', markerfacecolor = 'none')
sns.scatterplot(data=df, x='x', y='y', hue='cat', markerfacecolor = None)
with sns.plotting_context(rc={"markerfacecolor": None}):
sns.scatterplot(data=df, x='x', y='y', hue='cat')
Run Code Online (Sandbox Code Playgroud) matplotlib.pyplot.scatter()有一个facecolors=None参数将使数据点看起来内部是空心的。如何获得相同的外观seaborn.jointplot()?
在早期版本的seaborn中也发现了相同的论点,但由于某种原因在最新版本(0.11)中被删除。