Streudiagramm mit variabler Markergröße (Seaborn)

Ich benutze einen Seebärenpairplot, um ein Streudiagramm mit verschiedenen Dimensionen meiner Datenpunkte zu zeichnen. Ich möchte jedoch, dass die Markierungen der Datenpunkte eine Größe haben, die einer der Dimensionen der Datenpunkte entspricht. Ich habe den folgenden Code:

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])

Wenn ich macheprint(kws), Ich sehe im Wörterbuch, dass die Größen alle unterschiedlich sind und von 40 bis 2000 variieren. Die Markierungen auf dem Plot sind jedoch alle gleich. Gibt es eine Möglichkeit, das zu erreichen, was ich will?

Btw, das funktioniert sehr gut mitlmplot wenn ich den Parameter @ einstelscatter_kws={"s": markersize}.

Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage