python绘制双条形图_无法使用ndarray的pyplot绘制双条条形图

我得到了2{ndarray},它有3个值:正、负和中性。>>>y1

array([82, 80, 63])

>>>y2

array([122, 73, 30])

同样,我需要将y1[0]和y2[0]绘制在一起,因为它们对应为正值,每个数组中的其他2个值也是如此。

我试过这个:import matplotlib.pyplot as plt

import numpy as np

def biplt(groundTruth, predictedValues, plt_name=''):

gt = groundTruth

pr = predictedValues

x = np.arange(2)

y1, y2 = gt.values, pr.values

fig, axes = plt.subplots(ncols=1, nrows=1)

width = 0.20

plt.title('%s\n Accuracy Score' % plt_name)

plt.xlabel('Parameters')

plt.ylabel('Score')

axes.bar(x, y1, width, label="Algorithm 1")

axes.bar(x + width, y2, width, color=list(plt.rcParams['axes.prop_cycle'])[2]['color'], label="Algorithm 2")

axes.set_xticks(x + width)

axes.set_xticklabels(['Positive', 'Negative'])

plt.legend()

plt.show()

导致ValueError,请检查以下内容:ValueError: shape mismatch: objects cannot be broadcast to a single shape

我无法诊断可能的形状有问题

我希望有一个类似的o/p:

你可能感兴趣的:(python绘制双条形图)