欧非资源网:安全、免费、专业放心的资源下载站! 最新软件|软件分类

您的位置:欧非资源网 > 其他专区 > EndNote > SciencePlots科研绘图 使用基础教程

SciencePlots科研绘图 使用基础教程

时间:2020-11-23 16:55作者:admin来源:未知人气:728我要评论(0)

SciencePlots科研绘图

在这里插入图片描述

简介

使用Python作为核心开发工具的机器学习和深度学习研究者自然会希望使用Matplotlib进行科研图表的绘制,但是Matplotlib默认的样式并不适合科研论文的出版,而SciencePlots就是为此定制的一系列科研绘图样式库,可以绘制很合适科研图表。

安装

具体的安装教程可以参考该项目Github开源地址,我这里简述一下。

PIP快速安装

使用下面的第一个命令安装最新版,第二个命令直接从PIP官方源下载安装,要落后最新版一个版本。

pip install git+https://github.com/garrettj403/SciencePlots.git 
  • 1
pip install SciencePlots 
  • 1

手动安装

上面的PIP安装会自动下载所有的*.mplstyle文件并将其放在当前环境的matplotlib的stylelib文件夹下,这个步骤也可以手动完成。Clone官方仓库到本地,将其中style文件夹下的所有以mplstyle为后缀的文件拷贝到matplotlib的资源目录下的stylelib文件夹,获得matplotlib资源目录可以通过下面的代码段获取。

import matplotlib print(matplotlib.get_configdir()) 
  • 1
  • 2

获得该目录后直接访问,新建stylelib文件夹(若有则不需要新建),将所有*.mplstyle文件放到该目录下即可。

在这里插入图片描述

使用

在所有的样式中,science.mplstyle为最核心的样式,使用该样式的方法和matpl切换样式的方法一致。

import matplotlib.pyplot as plt plt.style.use('science') 
  • 1
  • 2

当然,也可以指定多个样式,如下面这段代码中,ieee样式在某些部分会覆盖science样式以达到绘图需求。

import matplotlib.pyplot as plt plt.style.use(['science','ieee']) 
  • 1
  • 2

上面这几种方法都是对整个脚本生效的,想要对某个部分绘图的代码生效,则只需要使用with语句进行上下文管理即可。

with plt.style.context(['science', 'ieee']):     plt.figure()     plt.plot(x, y)     plt.show() 
  • 1
  • 2
  • 3
  • 4

案例

下面三个图是science样式、science+ieee以及science+ieee+grid样式的效果,在样式中加入no-latex以禁用Latex字体渲染,这是因为science样式默认采用Latex渲染,若没有安装Latex或者考虑到其比较耗时,禁用即可。


science

science+ieee

science+ieee+grid

上述效果的代码如下。

import numpy as np import matplotlib.pyplot as plt   def model(x, p):     return x ** (2 * p + 2) / (2 + x ** (2 * p))   x = np.linspace(0.75, 1.25, 201)  with plt.style.context(['science', 'no-latex']):     fig, ax = plt.subplots()     for p in [10, 15, 20, 30, 50, 100]:         ax.plot(x, model(x, p), label=p)     ax.legend(title='Order')     ax.set(xlabel='Voltage (mV)')     ax.set(ylabel='Current (μA)')     ax.autoscale(tight=True)     fig.savefig('fig1.png', dpi=300)  with plt.style.context(['science', 'ieee', 'no-latex']):     fig, ax = plt.subplots()     for p in [10, 20, 50]:         ax.plot(x, model(x, p), label=p)     ax.legend(title='Order')     ax.set(xlabel='Voltage (mV)')     ax.set(ylabel='Current (μA)')     ax.autoscale(tight=True)     fig.savefig('fig2.png', dpi=300)  with plt.style.context(['science','ieee', 'grid', 'no-latex']):     fig, ax = plt.subplots()     for p in [10, 20, 50]:         ax.plot(x, model(x, p), label=p)     ax.legend(title='Order')     ax.set(xlabel='Voltage (mV)')     ax.set(ylabel='Current (μA)')     ax.autoscale(tight=True)     fig.savefig('fig3.png', dpi=300) 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39

补充说明

如果有论文里绘图想要使用Matplotlib又不想花费太多精力定制绘图样式,SciencePlots是很不错的选择,已经有不少发表的文章采用该库了,感兴趣可以尝试一下。

相关阅读 如何使用Origin Pro利用公式直接绘图并提取曲线数据如何利用Origin Pro进行体外释药规律的拟合SPSS实现经典统计学分析与偏度、峰度等常用统计学指标的计算EndNote英文论文的国内作者姓名显示名的第二个字首写字母的方法EndNote论文参考文献中文文章与英文文章先后排列顺序的修改EndNote论文参考文献的输出引用格式自定义修改与编辑界面详解如何使用Endnote在论文中插入图片Origin Pro如何快速绘制火山图教程Origin Pro中必须知道的快捷键Origin高效绘图技能,OLE功能详解,让你效率直接翻倍

文章评论
发表评论

热门文章 如何解决EndNotes在word不显示的问题EndNote如何在WPS中使用,EndNote如何在WPS中插入和删除文献如何用GraphPad Prism 进行显著性分析Origin 如何在曲线图上添加各种标注的方法

最新文章 如何使用Origin Pro利用公式直接绘图并提取曲线数据如何利用Origin Pro进行体外释药规律的拟合 SPSS实现经典统计学分析与偏度、峰度等常用统计学指标的计算EndNote英文论文的国内作者姓名显示名的第二个字首写字母的方法EndNote论文参考文献中文文章与英文文章先后排列顺序的修改EndNote论文参考文献的输出引用格式自定义修改与编辑界面详解

人气排行 如何解决EndNotes在word不显示的问题EndNote如何在WPS中使用,EndNote如何在WPS中插入和删除文献如何用GraphPad Prism 进行显著性分析Origin 如何在曲线图上添加各种标注的方法如何利用Origin进行多元线性回归、指数拟合和非线性曲面拟合?Endnote 如何导出GB/T 7714-2015 格式参考文献如何去掉EndNote插入Word的参考文献的超链接EndNote的同步功能Sync使用详解教程

盖楼回复X

(您的评论需要经过审核才能显示)