我正在使用Seborn创建两个类别图。一个类别图有6个类别,而第二个类别图有5个类别要绘制。两个类别图中有3个相同的类别。我想为两个类别图中的每个共同类别设置相同的颜色。我正在使用sns.set_palette('coolwarm')设置两个类别图的颜色,但两个类别图中相同的类别具有不同的颜色。是否有办法将出现在两个图中的类别设置为相同的颜色?
sns.set_palette('coolwarm')
rsl1atfo1#
如果您将它们放在一个 Dataframe 中,并使用sns.catplot(),然后使用col=参数将图分开,则该方法应该有效:
sns.catplot()
col=
np.random.seed(111) d1 = pd.DataFrame({'x':np.random.randint(1,4,50), 'y':np.random.randn(50), 'z':np.random.choice(['a','b','c','d','e','f'],50), 'data':'d1' }) d2 = pd.DataFrame({'x':np.random.randint(1,4,50), 'y':np.random.randn(50), 'z':np.random.choice(['d','e','f','g','h'],50), 'data':'d2' }) df = pd.concat([d1,d2]) df['z'] = pd.Categorical(df['z'],ordered=True) sns.catplot(data=df,x='x',y='y',hue='z',col='data',palette='coolwarm')
sns.catplot(data=df,x='x',hue='z',col='data',kind='count',palette='coolwarm')
1条答案
按热度按时间rsl1atfo1#
如果您将它们放在一个 Dataframe 中,并使用
sns.catplot()
,然后使用col=
参数将图分开,则该方法应该有效: