x = np.array([106405611, 107148674, 107151119, 107159869, 107183396, 
    107229405, 107231917, 107236097, 107239994, 107259338, 107273842, 
    107275873, 107281000, 107287770, 106452671, 106471246, 106478110, 
    106494135, 106518400, 106539079])
y = np.array([9.09803208, 5.357552, 8.98868469, 6.84549005, 8.17990909, 
    10.60640521, 9.89935692, 9.24079133, 8.97441459, 9.09803208, 
    10.63753055, 11.82336724, 7.93663794, 8.74819285, 8.07146236, 
    9.82336724, 8.4429435, 10.53332973, 8.23361968, 10.30035256])
col = np.array([2, 4, 4, 1, 3, 4, 3, 3, 4, 1, 4, 3, 2, 4, 1, 1, 2, 2, 3, 1])
df = pd.DataFrame({'V': x, 'Distance': y, 'col': col})
cmap = sns.diverging_palette(20, 220, as_cmap=True)
colors = sns.diverging_palette(20, 220, n=4)
g = sns.JointGrid('V', 'Distance', data=df, ratio=2)
seaborn plot_marginals несколько kdeplots