ValueError形状不匹配:无法将对象广播为单个形状

问题描述

这是我计划用于创建BAR图表的代码。忽略下一行。我正在编写此代码只是为了平衡代码和细节。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
def bar1():
    df=pd.read_csv('C:\\Users\Bhuwan Bhatt\Desktop\IP PROJECT\Book1.csv',encoding= 'unicode_escape')
    x=np.arange(11)
    Countries=df['Country']
    STotalMed=df['SummerTotal']
    WTotalMed=df['WinterTotal']
    plt.bar(x-0.25,STotalMed,width=.2,label='Total Medals by Countries in Summer',color='g')
    plt.bar(x+0.25,WTotalMed,label='Total Medals by Countries in Winter',color='r')
    plt.xticks(np.arange(11),Countries,rotation=30)
    plt.title('Olympics Data Analysis of Top 10 Countries',color='red',fontsize=10)
    plt.xlabel('Countries')
    plt.ylabel('Total Medals')
    plt.grid()
    plt.legend()
    plt.show()
bar1()

由于某种原因,我收到此错误:

Traceback (most recent call last):
  File "C:/Users/Bhuwan Bhatt/Desktop/dsd.py",line 19,in <module>
    bar1()
  File "C:/Users/Bhuwan Bhatt/Desktop/dsd.py",line 10,in bar1
    plt.bar(x-0.25,color='g')
  File "C:\Users\Bhuwan Bhatt\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\pyplot.py",line 2471,in bar
    return gca().bar(
  File "C:\Users\Bhuwan Bhatt\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\__init__.py",line 1438,in inner
    return func(ax,*map(sanitize_sequence,args),**kwargs)
  File "C:\Users\Bhuwan Bhatt\AppData\Local\Programs\Python\Python38-32\lib\site-packages\matplotlib\axes\_axes.py",line 2430,in bar
    x,height,width,y,linewidth = np.broadcast_arrays(
  File "<__array_function__ internals>",line 5,in broadcast_arrays
  File "C:\Users\Bhuwan Bhatt\AppData\Local\Programs\Python\Python38-32\lib\site-packages\numpy\lib\stride_tricks.py",line 264,in broadcast_arrays
    shape = _broadcast_shape(*args)
  File "C:\Users\Bhuwan Bhatt\AppData\Local\Programs\Python\Python38-32\lib\site-packages\numpy\lib\stride_tricks.py",line 191,in _broadcast_shape
    b = np.broadcast(*args[:32])
ValueError: shape mismatch: objects cannot be broadcast to a single shape

这是我一直在使用的CSV文件:

Country SummerTimesPart Sumgoldmedal    Sumsilvermedal  Sumbronzemedal  SummerTotal WinterTimesPart Wingoldmedal    Winsilvermedal  Winbronzemedal  WinterTotal TotalTimesPart  Tgoldmedal  Tsilvermedal    Tbronzemedal    TotalMedal
     Afghanistan    14  0   0   2   2   0   0   0   0   0   14  0   0   2   2
     Algeria    13  5   4   8   17  3   0   0   0   0   16  5   4   8   17
     Argentina  24  21  25  28  74  19  0   0   0   0   43  21  25  28  74
     Armenia    6   2   6   6   14  7   0   0   0   0   13  2   6   6   14
     Australasia    2   3   4   5   12  0   0   0   0   0   2   3   4   5   12
     Australia  26  147 163 187 497 19  5   5   5   15  45  152 168 192 512
     Austria    27  18  33  36  87  23  64  81  87  232 50  82  114 123 319
     Azerbaijan     6   7   11  24  42  6   0   0   0   0   12  7   11  24  42
     Bahamas    16  6   2   6   14  0   0   0   0   0   16  6   2   6   14
     Bahrain    9   2   1   0   3   0   0   0   0   0   9   2   1   0   3
     Barbados   12  0   0   1   1   0   0   0   0   0   12  0   0   1   1
     Belarus    6   12  27  39  78  7   8   5   5   18  13  20  32  44  96
     Belgium    26  40  53  55  148 21  1   2   3   6   47  41  55  58  154
     Bermuda    18  0   0   1   1   8   0   0   0   0   26  0   0   1   1
     Bohemia    3   0   1   3   4   0   0   0   0   0   3   0   1   3   4
     Botswana   10  0   1   0   1   0   0   0   0   0   10  0   1   0   1
     Brazil     22  30  36  63  129 8   0   0   0   0   30  30  36  63  129
     British WestIndies     1   0   0   2   2   0   0   0   0   0   1   0   0   2   2
     Bulgaria   20  51  87  80  218 20  1   2   3   6   40  52  89  83  224
     Burundi    6   1   1   0   2   0   0   0   0   0   6   1   1   0   2
     Cameroon   14  3   1   2   6   1   0   0   0   0   15  3   1   2   6
     Canada 26  64  102 136 302 23  73  64  62  199 49  137 166 198 501
     Chile  23  2   7   4   13  17  0   0   0   0   40  2   7   4   13
     China  10  224 167 155 546 11  13  28  21  62  21  237 195 176 608
     Colombia   19  5   9   14  28  2   0   0   0   0   21  5   9   14  28
     Costa Rica     15  1   1   2   4   6   0   0   0   0   21  1   1   2   4
     Ivory Coast    13  1   1   1   3   0   0   0   0   0   13  1   1   1   3
     Croatia    7   11  10  12  33  8   4   6   1   11  15  15  16  13  44
     Cuba   20  78  68  80  226 0   0   0   0   0   20  78  68  80  226


INFO -----> SummerTimesPart:每个国家参加夏季的次数 WinterTimesPart:每个国家/地区参加冬季的次数

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)