gpt4 book ai didi

python - ValueError形状不匹配: objects cannot be broadcast to a single shape

转载 作者:行者123 更新时间:2023-12-03 08:05:48 24 4
gpt4 key购买 nike

这是我计划用于创建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,width=.2, 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,STotalMed,width=.2, label='Total Medals by Countries in Summer',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:每个国家/地区参加冬季的次数

最佳答案

只是改变

x=np.arange(11)

to

x = np.arange(len(df))
plt.xticks(np.arange(11),Countries,rotation=30) 

to

plt.xticks(x,Countries,rotation=30)

关于python - ValueError形状不匹配: objects cannot be broadcast to a single shape,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63659746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com