我正在使用seaborn pairplot
来绘制我的数据点的不同维度的散点图。但是,我希望数据点的标记具有与数据点的一个维度相对应的大小。我有以下代码:
markersize = 1000* my_dataframe['dim_size'] / sum(my_dataframe['dim_size'])
sns.set_context("notebook", font_scale=1.5, rc={'figure.figsize': [11, 8]})
sns.set_style("darkgrid", {"axes.facecolor": ".9"})
kws = dict(s=markersize, linewidth=.5, edgecolor="w")
sbax = sns.pairplot(my_dataframe, hue='dim_hue' x_vars=['dim_1', 'dim_2'], y_vars=['dim_3', 'dim_4'], size=5, plot_kws=kws)
axes = sbax.axes
for a in axes.flatten():
a.set_ylim([0,1])
a.set_xlim([0,1])
如果我print(kws)
,我在字典中看到尺寸都是不同的,从40到2000不等。但是,图上的标记都是相同的。有没有办法达到我想要的目的?
顺便说一句,如果我设置参数lmplot
,这与scatter_kws={"s": markersize}
的效果非常好。
谢谢!