我编写了以下装饰函数来更改为每个绘图任务调用的ggplot的默认样式:
# Style plots (decorator)
def plot_styling(func):
def wrapper(*args, **kwargs):
style = {'axes.titlesize' : 24,
'axes.labelsize' : 20,
'lines.linewidth' : 3,
'lines.markersize' : 10,
'xtick.labelsize' : 16,
'ytick.labelsize' : 16,
}
with plt.style.context((style)):
ax = func(*args, **kwargs)
return wrapper
现在,我想将默认网格颜色从浅灰色更改为白色,网格线更改为灰色。我该怎么做呢?
答案 0 :(得分:1)
查看参考文档here,您可以更改以下内容:
panel.background
panel.grid.major
panel.grid.minor
引用意味着我们将这些属性的值赋给从element_
函数返回的值。
<强>
panel.background = element_rect(fill = "white", colour = "grey50")
要修改装饰器,我会将这些添加到style
字典中。
# Style plots (decorator)
def plot_styling(func):
def wrapper(*args, **kwargs):
style = {'axes.titlesize': 24,
'axes.labelsize': 20,
'lines.linewidth': 3,
'lines.markersize': 10,
'xtick.labelsize': 16,
'ytick.labelsize': 16,
'panel.background': element_rect(fill="white"),
'panel.grid.major': element_line(colour="grey50"),
'panel.grid.minor': element_line(colour="grey50")
}
with plt.style.context((style)):
ax = func(*args, **kwargs)
return wrapper