论绘图,R一直压过Python一头,尤其是Python基础绘图库Matplotlib始终打不过ggplot2。
偶然看到 Matplotlib
风格美化神器——Aquarel
,效果十分惊艳,先睹为快:
作为一名理工男我觉得这太酷了,很符合我对未来生活的想象,科技并带着趣味。
说回这个神器,Aquarel
是一个用于可视化的轻量级模板引擎,也是 Matplotlibs
的 rcparams
包装器,使绘图的样式变得简单。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数据可视化入门(⬅️点击直达)。