自定义Matplotlib绘图风格

Matplotlib是Python的一个工具包,提供了丰富的数据绘图工具,主要用于绘制一些统计图形。

Matplotlib中包含大量预先定义的styles(绘图风格)。

比如ggplot(a popular plotting package fro R),classic(used by matplotlib-1.5 version, I like it)。可通过如下命令查看并设置合适的style。

1
2
3
import matplotlib.pyplot as plt
print(plt.style.available) # 查看所有的styles
plt.style.use('ggplot') # 选择需要的style

自定义style

Matplotlib支持创建style文件,然后使用style.use()调用。
style文件存放在~/.config/matplotlib/stylelib文件夹,可通过matplotlib.get_configdir()进行确定,如果不存在需要自行创建。
比如,创建一个用来展示的presentation style,文件命名为presentation.mplstyle,内容如下

1
2
3
4
5
6
axes.titlesize : 24
axes.labelsize : 20
lines.linewidth : 3
lines.markersize : 10
xtick.labelsize : 16
ytick.labelsize : 16

使用时甚至可以组合使用不同的styles

1
plt.style.use(['dark_background', 'presentation'])   # 后面的style会对前面的进行覆盖

Matplotlib rcParams 修改

1
2
3
4
5
6
7
import matplotlib as mpl
mpl.rcParams['lines.linewidth'] = 2
mpl.rcParams['lines.color'] = 'r'

mpl.rc('lines', linewidth=2, color='r')

matplotlib.rcdefaults()

Matplotlibrc file

存放默认的rc settings 和 rc parameters。
文件为~/.config/matplotlib/matplotlibrc,可通过matplotlib.matplotlib_fname()命令进一步确定
存放在~/.config/matplotlib/文件夹而不是Python安装目录下面,好处是不会被覆盖。


Ref: