最近一段时间在尝试用python读取超大的csv文件并将其数据可视化,而后遇到了一个困扰我三天的问题:由于我的y轴所代表的电流值波动不算太大,基本都在1.7-1.9这个范围之间,正常来说我看到的应该是一条波动不算太大的曲线,但我的程序将整个坐标轴的纵轴自动放缩了,如图所示,由于纵坐标的缩放,以至于看起来我的数据波动很大
而后根据查询到的一些解决方法,我加入了一行代码:plt.autoscale(False)#关闭自动缩放功能,而后输出图片十分诡异的变成了下图这样:
倒吸一口凉气.jpg
我能感觉到是我自己的编程逻辑出现的问题,但我从头注释到尾始终没有找到错误在哪里,下面是我的代码:
```python
import csv
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
Zb = [[], []]
file = open(r'D:\pythonproject\pythontrain\venv\1.csv') # 打开csv文件
reader = csv.reader(file) # 读取csv文件
data = list(reader) # 将csv数据转化为列表
length_h = len(data) # 得到数据行数
lenght_l = len(data[0]) # 得到每行长度
x = list()
y = list()
for i in range(0, length_h): # 从第一行开始读取
x.append(data[i][2]) # 将第三列数据从第一行读取到最后一行付给列表x
y.append(data[i][0]) # 将第一列数据从第一行读取到最后一行付给列表y
plt.autoscale(False) #关闭自动缩放功能
plt.xlabel("t") #设置x轴的名称
plt.ylabel("I/A") #设置y轴的名称
plt.plot(x,y) # 绘制折线图
plt.show() # 显示折线图
```