问题描述
我尝试使用python重新创建一个我的excel图表,但现在不断地打一个墙:
这是我设法去的代码:
import matplotlib.pyplot as plt
from numpy import arange
myfile = open(r'C:\Users\user\Desktop\Work In Prog\Alpha Data.csv', 'r')
label = [] # this is a string of the label
data = [] #this is some integer, some are the same value
for lines in myfile:
x = lines.split(',')
label.append(x[1])
data.append(x[4])
dataMin = float(min(data))
dataMax = float(max(data))
pos = arange(dataMin, dataMax, 1)
p1 = plt.bar(pos, data, color='red', height=1)
plt.show()
1楼
bar
期望以下内容:
matplotlib.pyplot.bar(left, height, width=0.8, bottom=None, hold=None, data=None, **kwargs)
你在做:
p1 = plt.bar(pos, data, color='red', height=1)
由于您(错误地)将data
作为第二个位置参数传递,因此当您将height
作为命名参数传递时,它已经被传递。
快速解决:
p1 = plt.bar(pos, 1, color='red', data=data)
(我承认我没有检查你的数据是否合规)