数据集如下:
要求:1.将4个数据集折线图画在一张图上,只要第一列
2.有几个数据集,没有第一行,不能手动删除,使用代码删除第一行
import pandas as pd
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings('ignore')
导入需要的库
import warnings
warnings.filterwarnings('ignore')
目的:关闭一些可能出现但对数据分析并无影响的警告
plt.rcParams["font.sans-serif"]=["SimHei"]
plt.rcParams["axes.unicode_minus"]=False
防止之后在图片中打印中文出现乱码,解决中文字符乱码的问题
并正常显示负号
df1=pd.read_csv('./unet ++ cbamtrain_loss.csv',names=[1,2])[1]
df2=pd.read_csv('./unet++ train_loss.csv',names=[1,2])[1]
df3=pd.read_csv('./unet++ 结合空洞train_loss.csv',names=[1,2])[1]
df4=pd.read_csv('./本文.csv',names=[1,2])[1]
导入处理的数据,取第一列
df1=df1.drop(df1[df1[:]==0].index)
df2=df2.drop(df2[df2[:]==0].index)
df3=df3.drop(df3[df3[:]==0].index)
df4=df4.drop(df4[df4[:]==0].index)
删除value为零的数据(垃圾数据)
y1=df1.values
x1=df1.index
y2=df2.values
x2=df2.index
y3=df3.values
x3=df3.index
y4=df4.values
x4=df4.index
plt.figure(figsize=(16,10))
plt.plot(x1,y1,'k-',x2,y2,'c-',x3,y3,'m-',x4,y4,'b-')
plt.grid()
plt.xlabel('Epoch',fontsize=20)
plt.ylabel('Loss',fontsize=20)
plt.legend(["unet ++ cbamtrain_loss","unet++ train_loss",
"unet++ 结合空洞train_loss","本文"],loc='upper right',frameon=False,fontsize=15)
plt.show()
构造每个折线的xy数据
设置图片大小
初始化折线形状,颜色
为背景加上网格
设置坐标轴名称
设置图例位置,边框,字体大小,图例内各个名称