Диаграмма рассеяния с изменяемым размером маркера (морской)
Я пользуюсь морским рожком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}
.
Спасибо!