# Function to get easily distinguishable colors
[docs]def default_palette(N):
switcher = {
0: [(0, 0, 0)],
1: [(55, 126, 184)],
2: [(88, 137, 176), (233, 72, 73)],
3: [(88, 137, 176), (233, 72, 73), (113, 191, 110)],
4: [(88, 137, 176), (233, 72, 73), (113, 191, 110), (255, 153, 51)],
5: [(88, 137, 176), (233, 72, 73), (113, 191, 110), (255, 153, 51), (80,80,80)],
6: [(231, 49, 51), (75, 139, 191), (95, 183, 92), (255, 140, 25), (221, 207, 110), (175, 103, 61)],
7: [(231, 49, 51), (75, 139, 191), (95, 183, 92), (255, 140, 25), (221, 207, 110), (175, 103, 61), (248, 142, 197)],
8: [(231, 49, 51), (75, 139, 191), (95, 183, 92), (255, 140, 25), (221, 207, 110), (175, 103, 61), (248, 142, 197), (163, 163, 163)],
9: [(231, 49, 51), (75, 139, 191), (95, 183, 92), (255, 140, 25), (221, 207, 110), (175, 103, 61), (248, 142, 197), (163, 163, 163), (162, 96, 172)],
10: [(94, 79, 162), (51, 143, 188), (116, 201, 165), (194, 231, 161), (237, 244, 164), (250, 235, 162), (254, 193, 110), (247, 122, 69), (217, 68, 79), (158, 1, 66)],
11: [(94, 79, 162), (50, 136, 189), (102, 194, 165), (171, 221, 164), (230, 245, 152), (242, 242, 181), (254, 224, 139), (253, 174, 97), (244, 109, 67), (213, 62, 79), (158, 1, 66)],
12: [(94, 79, 162), (50, 131, 189), (90, 186, 167), (152, 214, 164), (215, 240, 155), (238, 244, 169), (249, 237, 168), (254, 210, 123), (252, 157, 86), (241, 100, 68), (209, 57, 79), (158, 1, 66)],
13: [(94, 79, 162), (51, 126, 188), (80, 178, 172), (136, 209, 164), (194, 231, 161), (233, 245, 154), (242, 242, 181), (253, 228, 147), (254, 193, 110), (250, 141, 78), (237, 93, 70), (206, 53, 79), (158, 1, 66)],
14: [(94, 79, 162), (52, 123, 188), (71, 170, 176), (122, 204, 165), (176, 223, 164), (225, 244, 153), (238, 244, 172), (248, 238, 171), (254, 219, 132), (253, 178, 100), (248, 128, 71), (233, 87, 72), (203, 49, 78), (158, 1, 66)],
15: [(94, 79, 162), (53, 120, 187), (64, 163, 180), (111, 199, 165), (162, 217, 164), (211, 238, 157), (235, 245, 158), (242, 242, 181), (252, 231, 154), (254, 207, 120), (253, 165, 92), (246, 117, 68), (229, 82, 74), (200, 46, 78), (158, 1, 66)],
16: [(94, 79, 162), (55, 117, 186), (59, 157, 183), (102, 194, 165), (148, 213, 164), (194, 231, 161), (230, 245, 152), (239, 244, 174), (247, 239, 174), (254, 224, 139), (254, 193, 110), (251, 153, 84), (244, 109, 67), (226, 78, 76), (198, 43, 78), (158, 1, 66)],
17: [(94, 79, 162), (56, 115, 185), (55, 151, 185), (94, 189, 166), (136, 209, 164), (179, 224, 163), (221, 242, 154), (236, 245, 161), (242, 242, 181), (251, 233, 159), (254, 215, 128), (253, 181, 102), (250, 141, 78), (242, 102, 68), (223, 74, 77), (196, 41, 77), (158, 1, 66)],
18: [(94, 79, 162), (57, 112, 184), (53, 147, 187), (87, 183, 169), (125, 205, 165), (167, 220, 164), (208, 237, 157), (232, 245, 153), (239, 244, 175), (246, 239, 175), (254, 227, 144), (254, 204, 118), (253, 171, 95), (248, 131, 73), (239, 97, 69), (220, 71, 78), (194, 39, 77), (158, 1, 66)],
19: [(94, 79, 162), (58, 111, 184), (51, 143, 188), (80, 178, 172), (116, 201, 165), (156, 216, 164), (194, 231, 161), (227, 244, 152), (237, 244, 164), (242, 242, 181), (250, 235, 162), (254, 221, 134), (254, 193, 110), (252, 160, 89), (247, 122, 69), (237, 93, 70), (217, 68, 79), (192, 37, 76), (158, 1, 66)],
20: [(94, 79, 162), (59, 109, 183), (50, 139, 189), (74, 173, 174), (108, 198, 165), (146, 212, 164), (182, 225, 163), (217, 241, 155), (234, 245, 155), (239, 243, 176), (246, 240, 176), (253, 229, 149), (254, 212, 125), (253, 183, 103), (251, 150, 83), (245, 115, 68), (234, 89, 72), (215, 65, 79), (190, 35, 76), (158, 1, 66)]
}
begin = 20
end = 220
slope = (end-begin)/(N+1)
offset = begin
return switcher.get(N, [tuple([int(slope*i + offset)]*3) for i in range(N)])
[docs]def blackOnly(N):
begin = 200
end = 40
slope = (end-begin)/(N+1)
offset = begin
return [tuple([int(slope*i + offset)]*3) for i in range(N)]
# return [tuple([100]*3) for _ in range(N)]
[docs]def dark2(N):
switcher = {
3: [(27, 158, 119), (217, 95, 2), (117, 112, 179)],
4: [(27, 158, 119), (217, 95, 2), (117, 112, 179), (231, 41, 138)],
5: [(27, 158, 119), (217, 95, 2), (117, 112, 179), (231, 41, 138), (102, 166, 30)],
6: [(27, 158, 119), (217, 95, 2), (117, 112, 179), (231, 41, 138), (102, 166, 30), (230, 171, 2)],
}
begin = 20
end = 220
slope = (end-begin)/(N+1)
offset = begin
return switcher.get(N, [tuple([int(slope*i + offset)]*3) for i in range(N)])