Source code for macro_eeg_model.utils.plotting_setup

# external imports
import matplotlib as mpl
from matplotlib.colors import LinearSegmentedColormap
from matplotlib.font_manager import FontProperties, fontManager


PLOT_FORMAT = "pdf"
PLOT_SIZE = 10

COLORS = [
    "#E64B35",  #1
    "#00A087",  #2
    "#3C5488",  #3
    "#FFA70F",  #4
"#208BB5",  #35
    "#ED7287",  #5
    "#6AC882",  #6
    "#FF7C2B",  #7
    "#6A5A96",  #8
"#D3C518",  #28
    "#23A250",  #9
    "#5478D1",  #10
    "#A68026",  #11
    "#DF5C93",  #12
    "#41ABC4",  #13
    "#A04B4B",  #14
    "#7F7F7F",  #15
    "#995000",  #16
    "#925099",  #17
    "#E07A00",  #18
    "#E22B2B",  #19
    "#A5D324",  #20
    "#813BC9",  #21
    "#00CC65",  #22
    "#C91C77",  #23
    "#2A437C",  #24
    "#326924",  #25
    "#F15A22",  #26
    "#0069B5",  #27
    "#D3C518",  #28
    "#603813",  #29
    "#00AFA6",  #30
    "#C898AE",  #31
    "#A19700",  #32
    "#6B278B",  #33
    "#E07F48",  #34
    "#208BB5",  #35
    "#68111E",  #36
    "#A35563",  #37
    "#335C64",  #38
    "#E3BC3D",  #39
    "#3E6549",  #40
]

to_rgba = mpl.colors.ColorConverter().to_rgba
PLOT_COLORS = [to_rgba(c, 0.85) for c in COLORS]
COLOR_MAP = LinearSegmentedColormap.from_list("my_cmap", ["#00A087", "#208BB5", "#3C5488"], N=256)

# https://matplotlib.org/stable/users/explain/customizing.html

mpl.rcParams['lines.linewidth'] = PLOT_SIZE / 2 #2.5
mpl.rcParams['lines.markersize'] = PLOT_SIZE * 1

mpl.rcParams['axes.linewidth'] = 0 #PLOT_SIZE / 10
mpl.rcParams['axes.labelsize'] = 4 * PLOT_SIZE # 3
mpl.rcParams['axes.labelpad'] = 3 * PLOT_SIZE
mpl.rcParams['axes.titlesize'] = 4 * PLOT_SIZE # 3
mpl.rcParams['axes.titlepad'] = 3 * PLOT_SIZE


mpl.rcParams['xtick.labelsize'] = 4 * PLOT_SIZE # 3
mpl.rcParams['ytick.labelsize'] = 4 * PLOT_SIZE # 3
mpl.rcParams['xtick.major.size'] = 0
mpl.rcParams['ytick.major.size'] = 0

mpl.rcParams['legend.fontsize'] = 4 * PLOT_SIZE # 2.5
mpl.rcParams['legend.fancybox'] = True
mpl.rcParams['legend.edgecolor'] = "#FFFFFF"

mpl.rcParams['grid.color'] = "#E0E0E0"
mpl.rcParams['axes.prop_cycle'] = mpl.cycler(color=PLOT_COLORS)

mpl.rcParams['figure.autolayout'] = True

#mpl.rcParams["mathtext.fontset"] = 'Libertinus Math' TODO
try:
    font_path = 'fonts/OptimaLTPro-Roman.ttf'
    fontManager.addfont(font_path)
    myfont = FontProperties(fname=font_path)
    mpl.rcParams['font.serif'] = myfont.get_name()
    mpl.rcParams['font.family'] = myfont.get_name()
except:
    try:
        font_path = '../fonts/OptimaLTPro-Roman.ttf'
        fontManager.addfont(font_path)
        myfont = FontProperties(fname=font_path)
        mpl.rcParams['font.serif'] = myfont.get_name()
        mpl.rcParams['font.family'] = myfont.get_name()
    except:
        pass


[docs] def notation(region_name): """ Create an abbreation for a region name. Parameters ---------- region_name : str The name of the region. """ split_name = region_name.split(" ") split_name_except_last = split_name#[:-1] split_name_initials = [word[0] for word in split_name_except_last] split_name_initials_joined_caps = "".join(split_name_initials).upper() math_txt = split_name_initials_joined_caps #+ "_" + split_name[-1][0].upper() # return f"$\\mathrm{{{math_txt}}}$" return math_txt