Shortcuts

Source code for lumin.plotting.plot_settings

from pathlib import Path

__all__ = ['PlotSettings']


[docs]class PlotSettings: r''' Class to provide control over plot appearances. Default parameters are set automatically, and can be adjusted by passing values as keyword arguments during initialisation (or changed after instantiation) Arguments: keyword arguments: used to set relevant plotting parameters ''' def __init__(self, **kargs): if 'style' not in kargs: self.style = {'style':'whitegrid', 'rc':{'patch.edgecolor':'none'}} else: self.style = kargs['style'] if isinstance(kargs['style'], dict) else {'style':kargs['style']} self.cat_palette = 'tab10' if 'cat_palette' not in kargs else kargs['cat_palette'] self.div_palette = 'RdBu_r' if 'div_palette' not in kargs else kargs['div_palette'] self.seq_palette = 'viridis' if 'seq_palette' not in kargs else kargs['seq_palette'] self.tk_sz = 16 if 'tk_sz' not in kargs else kargs['tk_sz'] self.tk_col = 'black' if 'tk_col' not in kargs else kargs['tk_col'] self.lbl_sz = 24 if 'lbl_sz' not in kargs else kargs['lbl_sz'] self.lbl_col = 'black' if 'lbl_col' not in kargs else kargs['lbl_col'] self.title = '' if 'title' not in kargs else kargs['title'] self.title_sz = 26 if 'title_sz' not in kargs else kargs['title_sz'] self.title_col = 'black' if 'title_col' not in kargs else kargs['title_col'] self.title_loc = 'left' if 'title_loc' not in kargs else kargs['title_loc'] self.leg_sz = 16 if 'leg_sz' not in kargs else kargs['leg_sz'] self.leg_loc = 'best' if 'leg_loc' not in kargs else kargs['leg_loc'] self.savepath = Path('.') if 'savepath' not in kargs else kargs['savepath'] self.format = '.pdf' if 'format' not in kargs else kargs['format'] if not isinstance(self.savepath, Path): self.savepath = Path(self.savepath) if '.' not in self.format: self.format = '.' + self.format self.h_small = 4 if 'h_small' not in kargs else kargs['h_small'] self.h_mid = 8 if 'h_mid' not in kargs else kargs['h_mid'] self.h_large = 12 if 'h_large' not in kargs else kargs['h_large'] self.h_huge = 16 if 'h_huge' not in kargs else kargs['h_huge'] self.aspect = 16/9 if 'aspect' not in kargs else kargs['aspect'] self.w_small = self.aspect*self.h_small if 'w_small' not in kargs else kargs['w_small'] self.w_mid = self.aspect*self.h_mid if 'w_mid' not in kargs else kargs['w_mid'] self.w_large = self.aspect*self.h_large if 'w_large' not in kargs else kargs['w_large'] self.w_huge = self.aspect*self.h_huge if 'w_huge' not in kargs else kargs['w_huge'] self.targ2class = {0: 'Background', 1: 'Signal'} if 'targ2class' not in kargs else kargs['targ2class'] self.sample2col = None if 'sample2col' not in kargs else kargs['sample2col']
[docs] def str2sz(self, sz:str, ax:str) -> float: r''' Used to map requested plot sizes to actual dimensions Arguments: sz: string representation of size ax: axis dimension requested Returns: width of plot dimension ''' sz,ax = sz.lower(),ax.lower() if sz == 'small': return self.w_small if ax == 'x' else self.h_small if sz == 'mid': return self.w_mid if ax == 'x' else self.h_mid if sz == 'large': return self.w_large if ax == 'x' else self.h_large if sz == 'huge': return self.w_huge if ax == 'x' else self.h_huge
Read the Docs v: stable
Versions
latest
stable
v0.8.0
v0.7.2
v0.7.1
v0.7.0
v0.6.0
v0.5.1
v0.5.0
v0.4.0.1
v0.3.1
Downloads
pdf
html
epub
On Read the Docs
Project Home
Builds

Free document hosting provided by Read the Docs.

Docs

Access comprehensive developer and user documentation for LUMIN

View Docs

Tutorials

Get tutorials for beginner and advanced researchers demonstrating many of the features of LUMIN

View Tutorials