我想为我的数据创建堆积的子图。我希望通过'类型','周'来创建子图。作为我的x轴,'得分'被堆叠。
function max_shipping_filter( $shipping_total ) {
$max = 79.00;
return $shipping_total > $max ? $max : $shipping_total;
}
add_filter( 'woocommerce_order_amount_total_shipping', 'max_shipping_filter' );
这就是我现在所拥有的,如果我添加一个参数" subplot = True'
np.random.seed(1234)
test = pd.DataFrame({'week':[1,1,1,1,1,1,2,2,2,2,2,2],
'score':np.random.uniform(0,1,12),
'type': [0,1,0,1,0,1,0,1,0,1,0,1],
'type2':[3,3,4,4,5,5,3,3,4,4,5,5]})
答案 0 :(得分:3)
我认为 - 但我不确定 - 很难合并stacked
和subplots
选项。所以这是一个解决方案 - 我希望 - 产生预期的输出,但可能会有所改进。
# Test data
np.random.seed(1234)
test = pd.DataFrame({'week':[1,1,1,1,1,1,2,2,2,2,2,2],
'score':np.random.uniform(0,1,12),
'type': [0,1,0,1,0,1,0,1,0,1,0,1],
'type2':[3,3,4,4,5,5,3,3,4,4,5,5]})
grouped = test.groupby(['type','week','type2']).agg('sum')
# Preparing plots
fig, axes = plt.subplots(nrows=2)
for group_name, group in grouped.groupby(level=0):
group.index = group.index.droplevel(0)
group = group.unstack(1)
group.columns = group.columns.droplevel()
group.plot(kind='bar', stacked=True, ax=axes[group_name], title='type: ' + str(group_name))
答案 1 :(得分:2)