SciencePlots:优化科学绘图的 Matplotlib 样式,Python 绘美图

SciencePlots 是什么?
一句话:SciencePlots 是一套为科学绘图优化的 Matplotlib 样式集合。它把字体、字号、线宽、色彩循环、图宽(针对期刊列宽)等参数都调好了,支持多种期刊样式(列如 IEEE、Nature),也有适合笔记本展示的样式和对色盲友善的配色。还支持中文、日文、韩文等 CJK 字体配置(需要你先装好相应字体)。

SciencePlots:优化科学绘图的 Matplotlib 样式,Python 绘美图

它解决了哪些痛点?

  • • 不用再手动调一堆 rcParams:一次设置,整个项目风格一致。
  • • 直接输出适配期刊排版的图(列如 IEEE 单栏宽度),减少返修工作。
  • • 黑白打印可读性更好(某些期刊只看黑白稿)。
  • • 内置几种友善的色彩循环,避免“永远用那几种颜色带来的审美疲劳”。
  • • 支持把 LaTeX 用在图里(当然要先装 LaTeX)。
    总之:画图这件事,从“反复试样式”变成“专注内容”。

优点

  • • 统一:一个团队里大家画出来的图风格一致,看起来更专业。
  • • 多样:有 science、ieee、nature、notebook、各种色彩方案,组合使用也行。
  • • 对论文友善:自动按期刊要求设置字号、线宽、图宽。

SciencePlots:优化科学绘图的 Matplotlib 样式,Python 绘美图

缺点

  • • 依赖 LaTeX:想用 LaTeX 字体渲染,得先装 LaTeX 环境,Windows 用户可能要多跑几步。
  • • CJK 字体需自行安装:中文显示好看需要安装额外字体并配置。
  • • 风格不完全“万能”:有时你需要超级个性化排版,还是得改 rcParams。SciencePlots 是个很好的起点,但并非一键覆盖所有特殊需求。

SciencePlots:优化科学绘图的 Matplotlib 样式,Python 绘美图

安装

  • • PyPI(pip,适合大多数人)
    pip install SciencePlots
  • • conda(如果你用 conda 环境)
    conda install -c conda-forge scienceplots
  • • 直接安装最新 GitHub 代码(想最新功能或修复)
    pip install git+https://github.com/garrettj403/SciencePlots
  • • 或者克隆源码本地安装:
    git clone https://github.com/garrettj403/SciencePlots.git
    cd SciencePlots
    pip install -e .

SciencePlots:优化科学绘图的 Matplotlib 样式,Python 绘美图

快速上手

  1. 1. 最基础(全局样式):
import matplotlib.pyplot as plt
import scienceplots

plt.style.use('science')

plt.plot([1,2,3],[1,4,9])
plt.xlabel('X')
plt.ylabel('Y')
plt.title('示例图')
plt.show()
  1. 2. 组合样式(列如想同时用 science + ieee):
plt.style.use(['science', 'ieee'])

顺序重大:后面的会覆盖前面的某些设置。

  1. 3. 临时使用某个样式(不改全局):
with plt.style.context('science'):
    plt.figure()
    plt.plot(x, y)
    plt.show()
  1. 4. 如果你要在论文中使用特定列宽(列如 IEEE 单栏),SciencePlots 已经帮你把 figure 宽度和字体设好了,直接套样式就好。

常见问题小提示

  • • 字体乱码/中文不显示:先安装对应的 CJK 字体(SciencePlots Wiki 有推荐),并确保 Matplotlib 找得到。
  • • 想要色盲友善配色:SciencePlots 内置了 bright 等色彩循环,直接使用即可。
  • • 如果样式没生效:确认 import scienceplots 出目前 plt.style.use 之前(版本差异容易忘)。
  • • 想新增期刊样式或配色:欢迎去 GitHub 提 PR,社区很开放。

总结
SciencePlots 是科研画图的 “速成套装”——省去一大堆样式折腾,让你的图更专业、更统一,尤其适合要写论文、做海报或给导师展示的人。不是万能的美工工具,但绝对是科研绘图工作流里的高效助手。想要“先画好看,再调内容”的话,强烈推荐把它放进你的 Python 绘图工具箱里。

项目地址:https://github.com/garrettj403/SciencePlots

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
分星分野的头像 - 鹿快
评论 共1条

请登录后发表评论

    暂无评论内容