未显示海运散点图图例 [英] Seaborn scatterplot legend not showing

查看:18
本文介绍了未显示海运散点图图例的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用以下代码绘制一些数据

from sklearn.datasets import make_blobs
import seaborn as sns
import numpy as np

X, y = make_blobs(n_samples=1000, n_features=2, centers=10, cluster_std=1.0, center_box=(-10.0, 10.0), shuffle=True, random_state=None)

palette = np.array(sns.color_palette("bright", 10))  #Chossing color  
sns.scatterplot(X[:,0],X[:,1],legend='full',c=palette[y])

颜色很漂亮,但缺少图例。 当我查看文档时,我看到:

如何绘制图例。如果为"Brief",则数值huesize变量 .

所以似乎我还需要包括hue参数。 但是,当我使用以下代码尝试hue参数时,将创建以下图形.

sns.scatterplot(X[:,0],X[:,1],legend='full',hue=y,c=palette[y])

图例正在显示,但颜色不是我想要的。添加hue参数后,它似乎覆盖了调色板参数。不管我选什么调色板,颜色还是难看得要命…

我的问题是: 如何在保持所需颜色的同时显示图例?

推荐答案

您需要使用palettekwarg,并使用y值指定色调。

from sklearn.datasets import make_blobs
import seaborn as sns
import matplotlib.pyplot as plt

X, y = make_blobs(n_samples=1000, n_features=2, centers=10, cluster_std=1.0,
                  center_box=(-10.0, 10.0), shuffle=True, random_state=None)

palette = sns.color_palette("bright", 10)  #Choosing color
sns.scatterplot(X[:, 0], X[:, 1], palette=palette, hue=y, legend='full')
plt.show()

这篇关于未显示海运散点图图例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆