【SCI绘图】【曲线图系列2 python】多类别标签对比的曲线图

SCI,CCF,EI及核心期刊绘图宝典,爆款持续更新,助力科研!

本期分享:

【SCI绘图】【曲线图系列2 python】多类别标签对比的曲线图,文末附完整代码

1.环境准备

python 3

import proplot as pplt
import pandas as pd

from proplot import rc

2.数据示例与读取

数据示例:

     68.52769   1.01941334E-118   1.04975387E-287   3.07499527E-220   4.62365918E-169   2.32835613E-134
     68.58945   3.94732386E-118   8.59329295E-287   1.94218811E-219   2.33402749E-168   9.88293492E-134
     68.65121   1.51971781E-117   6.98480839E-286   1.21860660E-218   1.17091842E-167   4.17021496E-133
     68.71298   5.81756808E-117   5.63747055E-285   7.59578697E-218   5.83793125E-167   1.74935402E-132
     68.77474   2.21436321E-116   4.51815464E-284   4.70360236E-217   2.89277108E-166   7.29548983E-132
     68.83650   8.38099508E-116   3.59581184E-283   2.89366667E-216   1.42463282E-165   3.02481879E-131
     68.89826   3.15422077E-115   2.84186785E-282   1.76863385E-215   6.97327187E-165   1.24687538E-130
     68.96003   1.18045311E-114   2.23045665E-281   1.07401485E-214   3.39254761E-164   5.11017864E-130
     69.02179   4.39314840E-114   1.73851547E-280   6.48002835E-214   1.64052134E-163   2.08232725E-129
     69.08355   1.62586232E-113   1.34576744E-279   3.88462479E-213   7.88524556E-163   8.43669246E-129
     69.14532   5.98387683E-113   1.03461776E-278   2.31386509E-212   3.76735665E-162   3.39872639E-128
     69.20708   2.19019452E-112   7.89987107E-278   1.36947767E-211   1.78919283E-161   1.36141743E-127

读取数据:

# 读取 txt 文件中的数据
data = pd.read_csv('uv_curve.txt', header=None, delim_whitespace=True)

# 颜色、曲线格式以及标签
color_list = ['black', 'red', 'orange', 'blue', 'green']
label_list = ['label1', 'label2', 'label3', 'label4', 'label5']
style_list = ['-', '--', '--', '--', '--']

3.绘图展示

画布设置:

# 设置绘图的默认参数,如字体、字号等
rc['font.name'] = 'Arial'
rc['title.size'] = 14
rc['label.size'] = 12
rc['font.size'] = 10.5
rc['tick.width'] = 1.3
rc['meta.width'] = 1.3
rc['label.weight'] = 'bold'
rc['tick.labelweight'] = 'bold'
rc['ytick.major.size'] = 4.6
rc['ytick.minor.size'] = 2.5
rc['xtick.major.size'] = 4.6
rc['xtick.minor.size'] = 2.5

绘制逻辑:

# 创建画布
fig, ax = pplt.subplots(figsize=(6 * 0.9, 4 * 0.9))

# 绘制多曲线图
x = data.iloc[:, 0]
for i in range(len(data.columns) - 1):
    y = data.iloc[:, i + 1]
    ax.plot(x, y, linewidth=1.3, color=color_list[i], 
            label=label_list[i], linestyle=style_list[i])

# 设置图例
ax.legend(loc='ur', ncols=1, fontweight='bold', frame=False)

# 格式化图像
fig.format(
    grid=False, ylabel='Absorbance', xlabel='Wavelength (nm)',
    xlim=(80, 200), xminorlocator=10, xlocator=20, 
    ylim=(0, 10000), yminorlocator=1000, ylocator=2000
)

fig.show()

fig.savefig('uv.png', bbox_inches='tight', dpi=300)

完整代码:

# -*- coding: utf-8 -*-
import proplot as pplt
import pandas as pd

from proplot import rc

# 读取 txt 文件中的数据
data = pd.read_csv('uv_curve.txt', header=None, delim_whitespace=True)

# 颜色、曲线格式以及标签
color_list = ['black', 'red', 'orange', 'blue', 'green']
label_list = ['label1', 'label2', 'label3', 'label4', 'label5']
style_list = ['-', '--', '--', '--', '--']

# 设置绘图的默认参数,如字体、字号等
rc['font.name'] = 'Arial'
rc['title.size'] = 14
rc['label.size'] = 12
rc['font.size'] = 10.5
rc['tick.width'] = 1.3
rc['meta.width'] = 1.3
rc['label.weight'] = 'bold'
rc['tick.labelweight'] = 'bold'
rc['ytick.major.size'] = 4.6
rc['ytick.minor.size'] = 2.5
rc['xtick.major.size'] = 4.6
rc['xtick.minor.size'] = 2.5

# 创建画布
fig, ax = pplt.subplots(figsize=(6 * 0.9, 4 * 0.9))

# 绘制多曲线图
x = data.iloc[:, 0]
for i in range(len(data.columns) - 1):
    y = data.iloc[:, i + 1]
    ax.plot(x, y, linewidth=1.3, color=color_list[i], 
            label=label_list[i], linestyle=style_list[i])

# 设置图例
ax.legend(loc='ur', ncols=1, fontweight='bold', frame=False)

# 格式化图像
fig.format(
    grid=False, ylabel='Absorbance', xlabel='Wavelength (nm)',
    xlim=(80, 200), xminorlocator=10, xlocator=20, 
    ylim=(0, 10000), yminorlocator=1000, ylocator=2000
)

fig.show()

fig.savefig('uv.png', bbox_inches='tight', dpi=300)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/519811.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java流操作解析:深度剖析中间操作、终端操作与并行处理机制

文章目录 一、中间操作1.1 过滤(filter)1.2 映射(map)1.3 排序(sorted)1.4 去重(distinct) 二、 终端操作2.1 收集(collect)2.2 计数(count&#…

leetcode热题100.跳跃游戏2

Problem: 45. 跳跃游戏 II 文章目录 题目思路复杂度Code 题目 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i j] 处: …

leetcode.24. 两两交换链表中的节点

题目 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 思路 创建虚拟头节点,画图,确认步骤。 实现 /*** Definition for singly-li…

C++运算符重载如何模拟数学表达式,或模拟Python sympy和numpy

在人工智能数学基础一书中,下面是一题Python求函数极限的例子: 【例2.6】使用Python编程求 lim( x → 1) (x^2 - 1 / x - 1) ————————————————————————————————————————— import sympy from sympy import oo…

详细剖析多线程3----代码案例分析

文章目录 一、单例模式(校招中最常考的设计模式之⼀)1.1饿汉模式1.2懒汉模式 二、阻塞队列三、定时器四、线程池五、总结 一、单例模式(校招中最常考的设计模式之⼀) 单例模式是一种设计模式,其核心思想是保证一个类只有一个实例,并提供一个全局访问点来…

Three.js阴影贴图

生成阴影贴图的步骤如下: 从光位置视点(阴影相机)创建深度图。从相机的角度进行屏幕渲染在每个像素点,将阴影相机的MVP矩阵计算出的深度值与深度图值进行比较如果深度图值较低,则说明该像素点存在阴影 ,因…

html5如何在使用原生开发的情况下实现组件化

我们知道如何在vue/react中使用组件化开发,那么如果只是一个简单的界面,一个HTML就搞定的事情,你还会去新建一个vue/react项目吗? 在使用原生HTML开发时,我们也会遇到一些常见的功能、模块,那么如何在原生…

【APUE】网络socket编程温度采集智能存储与上报项目技术------多路复用

作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生在读,研究方向无线联邦学习 擅长领域:驱动开发,嵌入式软件开发,BSP开发 作者主页:一个平凡而乐于分享的小比特的个人主页…

无锡国家集成电路设计中心某公司的单锂小电机直流电机H桥驱动电路

H桥驱动 L9110S是一款直流电机驱动电路,适合单节锂电池应用。输出电流0.4A。价格约3毛。 推荐原因: 某些人应该知道这个地方,大多数人应该不知道这个地方,所以推荐一下。 这个地方去过几次,某公司与某方走的“近”&…

在同一个局域网如何共享打印机和文件

1.在连接了打印机的主机上设置 1.1启用windows共享 打开网络与共享中心,点击“更改高级共享设置” 选择: “启用网络发现”“启用文件和打印机共享”“启用共享以便可以访问网络的用户可以读取和写入公用文件夹中的文件” 打开控制面板,选…

C#将Console写至文件,且文件固定最大长度

参考文章 将C#的Console.Write同步到控制台和log文件输出 业务需求 在生产环境中,控制台窗口不便展示出来。 为了在生产环境中,完整记录控制台应用的输出,选择将其输出到文件中。 但是,一次性存储所有输出的话,文件会…

NASA数据集——加拿大西北地区(NWT)2014 年被野火烧毁的北方森林的实地数据

ABoVE: Characterization of Carbon Dynamics in Burned Forest Plots, NWT, Canada, 2014 简介 文件修订日期:2019-04-12 数据集版本: 1 摘要 该数据集提供了加拿大西北地区(NWT)2014 年被野火烧毁的北方森林的实地数据。在 2015 年的实…

(学习日记)2024.04.03:UCOSIII第三十一节:信号量函数接口讲解

写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈。 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录&a…

Linux (Ubuntu)- mysql8 部署

目录 1.基本部署 2.修改密码 3.开启root可远程连接配置 1.基本部署 01》》先查看OS类型,如果是Ubuntu在往下边看 rootspray:/etc/mysql/mysql.conf.d# lsb_release -a LSB Version: core-11.1.0ubuntu2-noarch:security-11.1.0ubuntu2-noarch Distributor ID: …

12-1-CSS 常用样式属性

个人主页:学习前端的小z 个人专栏:HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结,欢迎大家在评论区交流讨论! 文章目录 CSS 常用样式属性1 CSS 三角形2 CSS 用户界面样式2.1 什么是界面样式2.2 鼠标…

【Spring】AOP——使用@around实现面向切面的方法增强

工作业务中,有大量分布式加锁的重复代码,存在两个问题,一是代码重复率高,二是容易产生霰弹式修改,使用注解和AOP可以实现代码复用,简化分布式锁加锁和解锁流程。 around注解是AspectJ框架提供的&#xff0c…

RK3568测试

作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生在读,研究方向无线联邦学习 擅长领域:驱动开发,嵌入式软件开发,BSP开发 作者主页:一个平凡而乐于分享的小比特的个人主页…

Prometheus+grafana环境搭建Docker服务(docker+二进制两种方式安装)(八)

由于所有组件写一篇幅过长,所以每个组件分一篇方便查看,前七篇链接如下 Prometheusgrafana环境搭建方法及流程两种方式(docker和源码包)(一)-CSDN博客 Prometheusgrafana环境搭建rabbitmq(docker二进制两种方式安装)(二)-CSDN博客 Prometheusgrafana环…

java数据结构与算法刷题-----LeetCode172. 阶乘后的零

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 文章目录 数学:阶乘的10因子个数数学优化:思路转变为求5的倍数…

【蓝桥杯选拔赛真题57】C++字符串反转 第十四届蓝桥杯青少年创意编程大赛 算法思维 C++编程选拔赛真题解

目录 C字符串反转 一、题目要求 1、编程实现 2、输入输出 二、算法分析 三、程序编写 四、程序说明 五、运行结果 六、考点分析 七、推荐资料 C字符串反转 第十四届蓝桥杯青少年创意编程大赛C选拔赛真题 一、题目要求 1、编程实现 给定一个只包含大写字母"M…