如何使用x = A列但color / hue = B列类别变量绘制图

时间:2019-05-26 04:50:35

标签: python pandas bar-chart seaborn

我有一个熊猫数据框,我想通过使用Seaborn创建条形图。问题是我想在X轴上使用两个类别变量之一(例如A列),但在另一个类别列(例如B列)中为条形着色。 B中的值可以代表A中的多个值。

        MajorCategories               name                 review_count    
Food,Restaurants              Mon Ami Gabi                  8348
Food,Restaurants              Bacchanal Buffet              8339
Restaurants                   Wicked Spoon                  6708
Food,Restaurants              Hash House A Go Go            5763
Restaurants                   Gordon Ramsay BurGR           5484
Restaurants                   Secret Pizza                  4286
Restaurants                   The Buffet at Bellagio        4227
Hotels & Travel              McCarran International Airport 3627
Restaurants                  Yardbird Southern Table & Bar  3576

所以,我想让我的绘图仪用x ='name'和y ='review_count'绘制条形,同时显示颜色/色调? =主要类别。没有很多代码行,Seaborn是否有可能?

下面是我在seaborn中获取的图像以及我正在尝试获取的图像的链接。

sns.catplot(x="review_count", y="name", kind="bar", data=plot_data,  aspect= 1.5)

我使用上面的代码使用seaborn进行绘制

Plot I get using seaborn using the code above

我想实现的图,这是在R中使用ggplot2 Plot I am trying to achieve, this one is using ggplot2 in R

  

1 个答案:

答案 0 :(得分:1)

尝试通过hue并设置dodge=False

sns.catplot(x="review_count", y="name", hue='MajorCategories',
            kind="bar", data=plot_data,
            dodge=False, aspect= 1.5)

输出:

enter image description here