我正在尝试在Python上使用matlib包绘制一些数据。但是,当我尝试绘制一组数据然后设置y轴限制时,y轴上的标签未显示我想要的完整范围。实际上,它只显示写入数据的值。
我尝试更改y轴限制。我尝试用另一组数据绘制它,但标签似乎没有变化。当我使用具有80-100数据的温度Vec进行绘图时,它将显示整个轴范围从0、100。当我尝试绘制相对湿度矢量时,它将仅从以下数据的可用范围内绘制数据:大约在0-40。
with open('April_26.csv') as csvfile:
readCSV = csv.reader(csvfile, delimiter =',')
next(readCSV) #skips the first row which is the headers
#Initialize arrays
timeVec = []
tempVec = []
relHumidityVec = []
#loop through each row
for row in readCSV: #for each row in the CSV file
##Storing specific data
#Note: CSV data is in strings so convert the integers if they are to be
treated as such
time = int(row[0])
temp = int(row[2])
relHum =row[3]
#append to array
timeVec.append(time/1000)
tempVec.append(temp)
relHumidityVec.append(relHum)
#initialize plot
fig, ax = plt.subplots()
#plt.scatter(timeVec, tempVec)
plt.scatter(timeVec, relHumidityVec, s = 4, marker = 'o', c = 'blue' , alpha = 0.4)
plt.scatter(timeVec, tempVec, s = 4, marker = 'o', c = 'red' , alpha = 0.4)
plt.ylim(0, 100)
我希望该图可以绘制我的两个图(温度与时间,相对湿度与时间),同时在0到100的y轴上绘制时间的整个范围和整个范围。
答案 0 :(得分:0)
我发现了问题所在。这是因为通过读取.csv文件,所有值都是字符串类型。我的相对湿度矢量仍然是字符串类型,因此我只需要使用代码转换为int。
relHum = int(row[3])