特别是我在处理Kaggle泰坦尼克号的数据集。我绘制了一个堆积的柱状图,显示了泰坦尼克号上幸存和死亡的年代。代码如下。
figure = plt.figure(figsize=(15,8))
plt.hist([data[data['Survived']==1]['Age'], data[data['Survived']==0]['Age']], stacked=True, bins=30, label=['Survived','Dead'])
plt.xlabel('Age')
plt.ylabel('Number of passengers')
plt.legend()
我想修改图表,以显示该年龄组每箱存活百分比的一个图表。E、 如果一个箱子里装着10-20岁之间的人,而泰坦尼克号上60%的人在这个年龄段幸存下来,那么这个箱子的高度将沿着y轴排列成60%。
编辑:我可能没有很好地解释我要找的东西。我不想改变y轴的值,而是希望根据存活的百分比来改变钢筋的实际形状。
图中的第一个箱子显示大约65%的人在这个年龄组存活下来。我想让这个箱子以65%的速度与y轴对齐。下面的垃圾箱看起来分别是90%、50%、10%,依此类推。
这张图最终看起来像这样:
pd.Series.hist
在下面使用np.histogram
。让我们来探索一下
我们可以在计算平均垃圾箱边缘时绘制这些图
实际答案
或者
我们可以简单地将
normed=True
传递给pd.Series.hist
方法。把它传给np.histogram
首先,最好创建一个函数,将数据按年龄分组
然后可以按如下方式绘制图形:
也许以下几点会有帮助。。。
基于“存活”拆分数据帧
创建箱子
使用np.histogram生成直方图数据
计算每个箱子的存活率
情节
相关问题 更多 >
编程相关推荐