title: count plot with stacked bars per hue
body: <p>I am looking for an efficient way of drawing a count plot with stacked bars according to "hue". 
  Standard hue behavior is to split a count into parallel bars according to the value of a second column, what I am looking for is an efficient way to have the hue bars stacked in order to quickly compare totals.</p>
  
  <p>Let me explain with an example from the titanic dataset:</p>
  
  <pre><code>import pandas as pd
  import numpy as np
  import seaborn as sns
  %matplotlib inline
  
  df = sns.load_dataset('titanic')
  sns.countplot(x='survived',hue='class',data=df)
  </code></pre>
  
  <p>gives standard Seaborn behavior with countplot and hue
  <img src="https://i.stack.imgur.com/v0rLQ.png" alt="Standard Seaborn behavior with countplot and hue"></p>
  
  <p>what I am looking for is something like stacked bars per hue
  <img src="https://i.stack.imgur.com/eBiPQ.png" alt="Stacked bars per hue"></p>
  
  <p>to get the last image I used the following code</p>
  
  <pre><code>def aggregate(rows,columns,df):
      column_keys = df[columns].unique()
      row_keys = df[rows].unique()
  
      agg = { key : [ len(df[(df[rows]==value) &amp; (df[columns]==key)]) for value in row_keys]
                 for key in column_keys }
  
      aggdf = pd.DataFrame(agg,index = row_keys)
      aggdf.index.rename(rows,inplace=True)
  
      return aggdf
  
  aggregate('survived','class',df).plot(kind='bar',stacked=True)
  </code></pre>
  
  <p>I am sure there is some more efficient way.
  I know seaborn is not very stacked bars friendly... so I tried to rearrange the dataset with my function and used matplotlib, but I guess there is a more clever way to do that as well.</p>
  
  <p>Thank you very much!</p>