如何解决从多个CSV文件绘制图
我有一个包含多个子目录的项目目录。每个子目录都包含一个* .csv 文件,其数据以以下格式显示
text,num,num
text,num
第0行中的文本后跟以','为分隔符的数字
我编写了用于绘制'*。csv'文件的代码。
x = []
y_list= []
with open('d1_data.csv','r') as csvfile:
plots= csv.reader(csvfile,delimiter=',')
for row in plots:
x.append(numpy.log10(float(row[1])))
y_list.append(float(row[2]))
num = float(1000000)
new_y = [y / num for y in y_list]
plt.plot(x,new_y,marker='o')
plt.title('single_plot')
plt.xlabel('x-axis')
plt.ylabel('y-axis')
plt.show()
相反,我想将来自不同目录中每个'*。csv'文件的所有曲线绘制成具有相同x和y轴的单个图形。每个传到'x'列表的'*。csv'文件值都需要输入 log10 的实际值,并将值添加到'y '需要除以 1000000 。
有人可以帮我实现这个问题吗?
解决方法
您可以使用glob查找所有具有* csv扩展名的文件,并为每个文件运行一个for循环,然后像在代码中一样将每个项目附加到列表中。
import glob,os
os.chdir("/mydir")
for file in glob.glob("*.csv"):
*enter your code here*
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。