# -*- coding:utf-8
import matplotlib as mpl
mpl.use('Agg')
import csv
import matplotlib as mpl
import matplotlib.pyplot as plt
#输入曲线xy坐标的csv文件
file_list = ['./roc_array_code7.csv',
'./roc_array_code3.csv']##########################
data_list_list=[]
for file in file_list:
tem = []
with open(file,'r') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
tem.append(row)
data_list_list.append(tem)
labels=['net7','net3']##########################
counter = 0
for data in data_list_list:
x=[]
y=[]
for row in data:
x.append(float(row[0]))
y.append(float(row[1]))
print(counter)
plt.plot(x,y,label=labels[counter])
counter +=1
plt.title('roc')##############################
plt.xlabel('FPR')##############################
plt.ylabel('TPR')##############################
print('2')
plt.legend()
print('3')
plt.savefig('./roc_multi.jpg')##############################
问题:代码读取csv文件中的数据,然后画出线图,保存时程序没反应
解决:读取csv文件时,数字是以字符串的形式存在的,画图时,要float(row【0】)转化成数字才能画图,否则保存时会卡住
