python科研数据可视化之折线图

例如 :

下面的配色表画出的图很好看。选择喜欢的颜色,找到代码中颜色部分进行修改即可。

代码部分已经有详细的注释,就不一一解释了。另外,如果想要坐标轴从设定的值开始就把下面代码中的范围xlim,ylim进行注释。

python 复制代码
import seaborn as sns
import matplotlib.pyplot as plt

# 输入数据
x=[4000,8000,12000,16000,20000,24000,28000]
y1 = [80.78,92.97,90.19,93.62,93.13,94.23,95.1]#cat
y2 = [87.76,92.52,94.46,91.57,90.93,93.41,93.63]#cow
y3 = [84.04,85.42,86.86,88.15,87.11,86.59,89.38]#dog

# 设置颜色代码
color1 = "#038355" # 孔雀绿
color2 = "#ffc34e" # 向日黄
color3 = "#b4a6ca" # 闪蝶紫
color4 = "#66ce63" # 湖蓝


# 设置字体
font = {'family' : 'Times New Roman',
        'size'   : 12}
plt.rc('font', **font)

# 绘图
sns.set_style("whitegrid") # 设置背景样式

sns.lineplot(x=x, y=y1, color=color1, linewidth=2.0, marker="o", markersize=8, markeredgecolor="white", markeredgewidth=1.5, label='cat')
sns.lineplot(x=x, y=y2, color=color2, linewidth=2.0, marker="s", markersize=8, markeredgecolor="white", markeredgewidth=1.5, label='cow')
sns.lineplot(x=x, y=y3, color=color3, linewidth=2.0, marker="h", markersize=8, markeredgecolor="white", markeredgewidth=1.5, label='dog')

# 添加标题和标签
plt.title("MaskCLIP+ Acc", fontweight='bold', fontsize=14) #标题
plt.xlabel("epoch", fontsize=12) #横坐标名称
plt.ylabel("Acc/%", fontsize=12) #纵坐标名称

# 添加图例
plt.legend(loc='upper left', frameon=True, fontsize=10)  #上左位置
plt.legend(loc='lower right', frameon=True, fontsize=10)  #下右位置


# 设置刻度字体和范围
plt.xticks(fontsize=10)
plt.yticks(fontsize=10)
plt.xlim(0, 30000)
plt.ylim(0, 100)

# 设置坐标轴样式
for spine in plt.gca().spines.values():
    spine.set_edgecolor("#CCCCCC")
    spine.set_linewidth(1.5)

#保存为图片
plt.savefig('lineplot.png', dpi=300, bbox_inches='tight')
# 显示图像
plt.show()
相关推荐
weixin_3077791322 分钟前
RAG 面试陷阱——混合检索并非无条件优越:一个条件反转实验
人工智能·python·面试·职场和发展
Dxy12393102161 小时前
JS DES 加密详解
开发语言·javascript·arcgis
充值内卷1 小时前
我给桌面加了个鱼缸:C++ 写后端,WebView2 里养一座 Three.js 小岛
开发语言·javascript·c++
云和数据.ChenGuang1 小时前
深入解析 Python 的 dir():从用法到 CPython 源码实现
开发语言·人工智能·python·langchain
nice_lcj5202 小时前
深入理解 Java 反射:从 Class 对象到方法调用(含性能实测 + 迷你 IOC 实战 + 面试考点)
java·开发语言·后端·面试
荣码4 小时前
长上下文与大文档处理:200页PDF怎么喂给AI,我踩了4个坑
java·python
樱花树下的数学喵4 小时前
手写简易 STL string|C++ 字符串底层实现
开发语言·c++
jimy14 小时前
C++ 报错的 qualifiers 的意思
开发语言·c++
databook4 小时前
Pandas 与 Polars:语法、性能和资源占用方面的对比
python·数据分析·pandas
威哥爱编程5 小时前
Python 智能体开发实战 10:本地跑得好好的,一并发就崩?把它做成一个能上线的服务
python·agent