情节中组合栏的错误位置

时间:2017-06-05 06:57:46

标签: python matplotlib

尝试使用MatPlotLib绘制组条形图,但我的条形位置错误。

所以,我有一个数据:

groups = [
    np.array([ group1.count(0), group1.count(1) ]),
    np.array([ group2.count(0), group2.count(1) ]),
] 

group[[1, 3], [0, 5]],这意味着每个组都有两种颜色。在第一组中,只有1人选择第一种颜色,其他3人选择第二种颜色。我试图绘制它但是条形位置是错误的:第一组中的3移动到第二组,依此类推。

我的错误在哪里?为什么会这样?

绘制数据的代码:

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

def draw(groups):
    group_labels = ['G1', 'G2']
    num_items = len(group_labels)
    ind = np.arange(num_items)
    margin = 0.05
    width = (1.-2.*margin)/num_items
    colors = ['#f5abb5', '#2fc2ef']

    s = plt.subplot(1,1,1)
    for num, vals in enumerate(groups):
        xdata = ind+margin+(num*width)
        plt.bar(xdata, vals, width, color=colors[num])
    s.set_xticks(ind+0.5)
    s.set_xticklabels(group_labels)


draw(groups)

1 个答案:

答案 0 :(得分:1)

您可以转置输入数组

groups = numpy.array([[1, 3], [0, 5]]).T

enter image description here