python绘制浅色范围曲线的示例代码
【python绘制浅色范围曲线的示例代码】借鉴:python绘制lost(损失)曲线 加 方差范围
直接上效果图:
文章图片
上代码:
import reimport seaborn as snsimport matplotlib.pyplot as pltimport matplotlib.cm as cmimport shutilimport osimport mathsns.set_style('whitegrid') path=r"F:\pycharm\class\20211008\alexnet_7class_srcData.csv"#数据的路径#读取csv文件csvfile = open(path, 'r')plots = csv.reader(csvfile)r1=[]r2=[]r3=[]#将每一列数据表示一组,将数据分组存放#row是按行读取,每一行有三个数据,分别存放for row in plots:r1.append(round(float(row[0]),3))r2.append(round(float(row[1]),3))r3.append(round(float(row[2]),3)) #求均值avg=[]for i in range(len(r1)):avg.append(round((r1[i]+r2[i]+r3[i])/3,3)) #求方差var=[]for i in range(len(r1)):var.append(((r1[i]-avg[i])**2+(r2[i]-avg[i])**2+(r3[i]-avg[i])**2)/3) #求标准差std=[]for i in range(len(r1)):std.append(math.sqrt(var[i]))
#通过该公式算出平均值+-标准差的曲线,便于后面范围曲线的描绘r1 = list(map(lambda x: x[0]-x[1], zip(avg, std)))r2 = list(map(lambda x: x[0]+x[1], zip(avg, std)))plt.rcParams["figure.figsize"] = (15,10)plt.plot(r1)plt.plot(r2)plt.legend(['范围曲线'],fontsize=30)plt.xticks(fontsize=20)plt.yticks(fontsize=20)plt.xlabel('Epoch Number',fontsize=20)plt.ylabel('Accuracy',fontsize=20)plt.ylim(0, 20)plt.show()
文章图片
#横坐标由于fill_between函数x=[]for i in range(300):x.append(i+1) # import matplotlib.pyplot as pltplt.rcParams["figure.figsize"] = (15,10)plt.plot(avg)plt.fill_between(x,r1, r2, color=cm.viridis(0.5), alpha=0.2)plt.legend(['avg'],fontsize=30)plt.xticks(fontsize=20)plt.yticks(fontsize=20)plt.xlabel('Epoch Number',fontsize=20)plt.ylabel('Accuracy',fontsize=20)plt.ylim(0, 20)plt.show()
文章图片
到此这篇关于python绘制浅色范围曲线的文章就介绍到这了,更多相关python浅色范围曲线内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- Python(pathlib模块)
- python青少年编程比赛_第十一届蓝桥杯大赛青少年创意编程组比赛细则
- Python数据分析(一)(Matplotlib使用)
- Python|Python 9.20