我试图pairplot用单独的颜色为每个图形制作一个简单的图形。我不知道这是否可行,因为我没有使用hue.
我的数据集是这样的:
High Jump Discus Throw Long Jump
0 859 732 1061
1 749 823 975
2 887 778 866
3 878 790 898
4 803 789 913
... ... ...
7963 714 571 760
7964 767 573 845
7965 840 461 804
7966 758 487 720
7967 714 527 809
Run Code Online (Sandbox Code Playgroud)
我的代码和图表如下所示:
t = sns.pairplot(new)
Run Code Online (Sandbox Code Playgroud)
有什么办法可以让这个颜色更鲜艳吗?
由于PairGrid自动将颜色属性传递给绘图函数,因此每个绘图获得不同颜色的一种方法是创建自己的绘图函数,忽略传递的颜色PairGrid(请注意,您hues显然失去了对颜色代码进行着色的可能性)
colors = iter(['xkcd:red purple', 'xkcd:pale teal', 'xkcd:warm purple',
'xkcd:light forest green', 'xkcd:blue with a hint of purple',
'xkcd:light peach', 'xkcd:dusky purple', 'xkcd:pale mauve',
'xkcd:bright sky blue', 'xkcd:baby poop green', 'xkcd:brownish',
'xkcd:moss green', 'xkcd:deep blue', 'xkcd:melon',
'xkcd:faded green', 'xkcd:cyan', 'xkcd:brown green',
'xkcd:purple blue', 'xkcd:baby shit green', 'xkcd:greyish blue'])
def my_scatter(x,y, **kwargs):
kwargs['color'] = next(colors)
plt.scatter(x,y, **kwargs)
def my_hist(x, **kwargs):
kwargs['color'] = next(colors)
plt.hist(x, **kwargs)
iris = sns.load_dataset("iris")
g = sns.PairGrid(iris)
g.map_diag(my_hist)
g.map_offdiag(my_scatter)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6883 次 |
| 最近记录: |