[英]Different point size based on hue argument in seaborn
我正在尝试根据数据框“色相”列上的值在航海散点图中使用不同的点大小。
sns.scatterplot(x="X", y="Y", data=df, hue='value',style='value')
value可以采用3个不同的值(0,1和2),我希望点值为2的点在图表上更大。
我尝试过sizes参数:sizes =(1,1,4)
但是无法通过这种方式完成。
使用seaborn的scatterplots
参数:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame({'X':[1,2,3,4,5],'Y':[1,2,3,4,5],
'value':[1,1,0,2,2]})
df["size"] = np.where(df["value"] == 2, "Big", "Small")
sns.scatterplot(x="X", y="Y", hue='value', size="size",
data=df, size_order=("Small", "Big"), sizes=(160, 40))
plt.show()
请注意,与size_order
相比, sizes
顺序需要重新size_order
。 不过,我不知道为什么这样做会有意义。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.