无意发现了 Matplotlib 美化器

机器学习算法与Python实战

共 1587字,需浏览 4分钟

 ·

2022-11-01 15:44

论绘图,R一直压过Python一头,尤其是Python基础绘图库Matplotlib始终打不过ggplot2。

偶然看到 Matplotlib 风格美化神器——Aquarel,效果十分惊艳,先睹为快:

作为一名理工男我觉得这太酷了,很符合我对未来生活的想象,科技并带着趣味。


说回这个神器,Aquarel 是一个用于可视化的轻量级模板引擎,也是 Matplotlibsrcparams 包装器,使绘图的样式变得简单。Aquarel 模板可以通过编程定义,并以 JSON 格式进行序列化和共享。

用起来也极简单,举个例子,我们先用Matplotlib随便画个箱线图

import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-7, 7, 140)
x = np.hstack([-25, x, 25])
fig, ax = plt.subplots()

ax.boxplot([x, x], notch=True, capwidths=[0.01, 0.2])

plt.show()

加上aquarel的美化呢,他内置了11个风格,大家挑选自己喜欢的即可,比如就选 arctic_light

这里有两种常用方法,一种是全局设置主题

from aquarel import load_theme

theme = load_theme("umbra_light")
theme.apply()

fig, ax = plt.subplots()

ax.boxplot([x, x], notch=True, capwidths=[0.01, 0.2])

theme.apply_transforms()

另一种是使用上下文管理器,个人比较推荐

from aquarel import load_theme

with load_theme("umbra_light"):
    x = np.linspace(-7, 7, 140)
    x = np.hstack([-25, x, 25])
    fig, ax = plt.subplots()

    ax.boxplot([x, x], notch=True, capwidths=[0.01, 0.2])

    plt.show()

效果:

其实就是把正常的绘图代码段插进去就行了

其他风格大家可以自行探索吧,文末附开源代码和官方文档

插播个广告:前几天整理了当初入门数据分析时写的数据可视化文章、代码、示例图——【教程】Python数据可视化入门(⬅️点击直达)。

开源地址:https://github.com/lgienapp/aquarel
官方教程:https://aquarel.readthedocs.io/en/latest/

推荐阅读

为了搞钱,人已疯癫
【教程】Python数据可视化入门
搭建完美的Python 机器学习开发环境
7大类卷积神经网络(CNN)创新综述

浏览 80
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报