我想创建一个堆积条形图,展示泰坦尼克号数据集。图表需要按照“Pclass”,“Sex”和“Survived”进行分组。我已经使用繁琐的numpy操作完成了这个任务,并生成了下面的标准化图(其中“M”代表男性,“F”代表女性)
有没有一种使用pandas内置绘图功能来完成这个任务的方法?
我已经尝试过以下代码:
![enter image description here](https://istack.dev59.com/SqFGH.webp)
我已经尝试过以下代码:
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv('train.csv')
df_grouped = df.groupby(['Survived','Sex','Pclass'])['Survived'].count()
df_grouped.unstack().plot(kind='bar',stacked=True, colormap='Blues', grid=True, figsize=(13,5));
这不是我想要的结果。有没有办法使用Pandas绘图产生第一个图?谢谢。
df.groupby(['Pclass', 'Sex'])['Survived'].mean().unstack().plot.bar()
,它更简洁、优雅。 - PyRsquared