Seaborn 散点图大小和抖动

Sco*_*son 9 python seaborn jupyter-notebook

我有以下散点图代码

dimens = (12, 10)
fig, ax = plt.subplots(figsize=dimens)
sns.scatterplot(data = information, x = 'latitude', y = 'longitude', hue="genre", s=200,
                x_jitter=4, y_jitter=4, ax=ax)
Run Code Online (Sandbox Code Playgroud)

无论我将抖动更改为什么,绘图仍然非常接近。它出什么问题了?

示例数据框:

 store      longitude       latitude      genre
mcdonalds    140.232323      40.434343     all
kfc          140.232323      40.434343     chicken
burgerking   138.434343      35.545433     burger
fiveguys     137.323984      36.543322     burger
Run Code Online (Sandbox Code Playgroud)

Stu*_*olf 17

在帮助页面中,它写道:

{x,y}_jitterbooleans 或 float 目前不起作用

您可以添加新列或即时执行:

import seaborn as sns
import pandas as pd
import numpy as np

information = pd.DataFrame({'store':['mcdonalds','kfc','burgerking','fiveguys'],
                   'longitude':[140.232323,140.232323,138.434343,137.323984],
                   'latitude':[40.434343,40.434343,35.545433,36.543322],
                   'genre':['all','chicken','burger','burger']})

def jitter(values,j):
    return values + np.random.normal(j,0.1,values.shape)

sns.scatterplot(x = jitter(information.latitude,2), 
                y = jitter(information.longitude,2),
                hue=information.genre,s=200,alpha=0.5)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


Mit*_*len -1

该参数s=200将各个散点设置为非常大的尺寸。相比之下,增加 4 个抖动点就显得微不足道了。