-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSCRaMbLE_simulation_chr_len_events_store2.py
More file actions
executable file
·208 lines (176 loc) · 33.2 KB
/
SCRaMbLE_simulation_chr_len_events_store2.py
File metadata and controls
executable file
·208 lines (176 loc) · 33.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
import matplotlib.pyplot as plt
import random
def plot_chr_len(SCRaMbLEd_events, chr_len, L_unique=[[]], LG50=[[]], num_essential= 0, simulations=1000, circular=False, probability=[0, 2, 2, 1], file_name="", SD_chr_len=[], SD_L_unique=[], SD_LG50=[]):
if isinstance(chr_len[0], float):
chr_len = [chr_len]
if isinstance(L_unique[0], float):
L_unique = [L_unique]
if isinstance(LG50[0], float):
LG50 = [LG50]
# plot the results
plt.figure(figsize=(7, 3.5), dpi=300)
# Font size
SMALL_SIZE = 8
MEDIUM_SIZE = 9
BIGGER_SIZE = 10
plt.rc('font', size=SMALL_SIZE) # controls default text sizes
plt.rc('axes', titlesize=SMALL_SIZE) # fontsize of the axes title
plt.rc('axes', labelsize=MEDIUM_SIZE) # fontsize of the x and y labels
plt.rc('xtick', labelsize=SMALL_SIZE) # fontsize of the tick labels
plt.rc('ytick', labelsize=SMALL_SIZE) # fontsize of the tick labels
plt.rc('legend', fontsize=SMALL_SIZE) # legend fontsize
plt.rc('figure', titlesize=MEDIUM_SIZE) # fontsize of the figure title
plt.rcParams['lines.linewidth'] = 0.65
# Find the longest chromosome
# Put all the chromosome length in one list
all_points = []
for p in chr_len:
all_points = all_points + p
# Add the standard variation
Max_SD_chr_len = 0
if SD_chr_len != []:
Max_SD_chr_len = max(SD_chr_len)
MAX_values = max(all_points) + Max_SD_chr_len
plt.ylim([0, MAX_values + 5])
#plt.ylabel("Chr length mean over " + str(simulations) + " simulations")
plt.ylabel("Average number of LUs")
plt.xlabel("SCRaMbLEd events")
#plt.title("Chr length over SCRaMbLE events", fontsize=9)
plt.plot(0,0, label="Chr len", color="tab:blue")
plt.plot(0,0, label="No. unique LUs", color="tab:orange") #label="Len unique"
plt.plot(0,0, label="LG50", color="tab:green")
#plt.boxplot(chr_len) # Use this to create boxplots. However, this needs all the data not just the mean
for i in range(len(chr_len)):
plt.plot(SCRaMbLEd_events, chr_len[i], color="tab:blue")
#plt.fill_between(SCRaMbLEd_events, chr_len[i] - SD_chr_len[i], chr_len[i] + SD_chr_len[i])
#plt.fill_between(SCRaMbLEd_events, chr_len[i], SD_chr_len)
if SD_chr_len != []:
plt.errorbar(SCRaMbLEd_events, chr_len[i], yerr=SD_chr_len, elinewidth=0.04)
if L_unique != [[]]:
plt.plot(SCRaMbLEd_events, L_unique[i], color="tab:orange")
if SD_L_unique != []:
plt.errorbar(SCRaMbLEd_events, L_unique[i], yerr=SD_L_unique, elinewidth=0.04)
if LG50 != [[]]:
plt.plot(SCRaMbLEd_events, LG50[i], color="tab:green")
if SD_LG50 != []:
plt.errorbar(SCRaMbLEd_events, LG50[i], yerr=SD_LG50, elinewidth=0.04)
if num_essential != 0:
plt.hlines(num_essential, 0, SCRaMbLEd_events[-1], colors="red", linestyle=":", label="No. essential LUs")
# plt.text(SCRaMbLEd_events[-1] * -0.16, len(syn_chr) * -0.16, "Simulations = " + str(simulations) + "\n" + "Initial chr length = " + str(len(chr_len[0][0])) + "\n" + "Essential LU = " + str(num_essential))
plt.legend(fontsize=8)
# These are some information to add to the saved files.
# Create a random seed to save the image
random_seed = str(random.random())[2:6]
if circular: # record if the chromosome is linear or circular
lin_cir = "c"
else:
lin_cir = "l"
probability_str = "" # record the probabilities of each event
for i in probability:
probability_str = probability_str + str(i)
file_name1 = "SCRaMbLE_chr_len/chr_length_" + lin_cir + "_events_" + str(SCRaMbLEd_events[-1]) + "_sim_" + str(simulations) + "_P" + probability_str + "_" + file_name + random_seed
plt.savefig(file_name1 + ".png", dpi=300, bbox_inches="tight")
plt.savefig(file_name1 + ".svg", format="svg", dpi=300, bbox_inches="tight")
plt.show()
plt.close()
return None
def plot_chr_len_median(SCRaMbLEd_events, chr_len, L_unique=[], LG50=[], num_essential= 0, simulations=1000, circular=False, probability=[0, 2, 2, 1], file_name=""):
if isinstance(chr_len[0], float):
chr_len = [chr_len]
# plot the results
plt.figure(figsize=(7, 3.5), dpi=300)
# Font size
SMALL_SIZE = 8
MEDIUM_SIZE = 9
BIGGER_SIZE = 10
plt.rc('font', size=SMALL_SIZE) # controls default text sizes
plt.rc('axes', titlesize=SMALL_SIZE) # fontsize of the axes title
plt.rc('axes', labelsize=MEDIUM_SIZE) # fontsize of the x and y labels
plt.rc('xtick', labelsize=SMALL_SIZE) # fontsize of the tick labels
plt.rc('ytick', labelsize=SMALL_SIZE) # fontsize of the tick labels
plt.rc('legend', fontsize=SMALL_SIZE) # legend fontsize
plt.rc('figure', titlesize=BIGGER_SIZE) # fontsize of the figure title
plt.rcParams['lines.linewidth'] = 0.65
# Find the longest chromosome
# Put all the chromosome length in one list
all_points = []
for p in chr_len:
all_points = all_points + p
MAX_values = max(all_points)
plt.ylim([0, MAX_values + 5])
plt.ylabel("Chr length median over " + str(simulations) + " simulations")
plt.xlabel("SCRaMbLEd events")
plt.title("Chr length over SCRaMbLE events", fontsize=9)
plt.plot(0, 0, label="Chr len", color="tab:blue")
plt.plot(0, 0, label="No. unique LUs", color="tab:orange") # label="Len unique"
plt.plot(0, 0, label="LG50", color="tab:green")
#plt.boxplot(chr_len) # Use this to create boxplots. However, this needs all the data not just the mean
for i in range(len(chr_len)):
plt.plot(SCRaMbLEd_events, chr_len[i], color="tab:blue")
if L_unique != []:
plt.plot(SCRaMbLEd_events, L_unique[i], color="tab:orange")
if LG50 != []:
plt.plot(SCRaMbLEd_events, LG50[i], color="tab:green")
if num_essential != 0:
plt.hlines(num_essential, 0, SCRaMbLEd_events[-1], colors="red", linestyle=":", label="No. essential LUs")
# plt.text(SCRaMbLEd_events[-1] * -0.16, len(syn_chr) * -0.16, "Simulations = " + str(simulations) + "\n" + "Initial chr length = " + str(len(chr_len[0][0])) + "\n" + "Essential LU = " + str(num_essential))
plt.legend(fontsize=8)
# These are some information to add to the saved files.
# Create a random seed to save the image
random_seed = str(random.random())[2:6]
if circular: # record if the chromosome is linear or circular
lin_cir = "c"
else:
lin_cir = "l"
probability_str = "" # record the probabilities of each event
for i in probability:
probability_str = probability_str + str(i)
file_name1 = "SCRaMbLE_chr_len/chr_length_" + lin_cir + "_events_" + str(SCRaMbLEd_events[-1]) + "_sim_" + str(simulations) + "_P" + probability_str + "_" + file_name + random_seed + "_median"
plt.savefig(file_name1 + ".png", dpi=300, bbox_inches="tight")
plt.savefig(file_name1 + ".svg", format="svg", dpi=300, bbox_inches="tight")
plt.show()
plt.close()
return None
if __name__ == '__main__':
essential = [2,7,9,10,12,20]
L_event = 7 # length of SCRaMbLE events
Chr_len0 = 45
max_SCRaMbLEd_events = 1001
SCRaMbLEd_events_range = 10
num_essential = 10
syn_chr = list(range(1, Chr_len0, 1))
SCRaMbLEd_events = list(range(0, max_SCRaMbLEd_events, SCRaMbLEd_events_range))
################################
# Normal P(DEL)/P(DUP) = 2
simulations = 1000
"""
# 2022-05-04 - R1757
chr_len = 1000 16.0
chr_len_SD = 1001 16.0
chr_len_Q1_Q2_Q3 = 1001 = 10.0 14.0 22.0
chr_len_L = [44.0, 44.234, 44.654, 44.871, 44.858, 45.242, 45.227, 45.197, 45.646, 45.565, 45.412, 45.056, 45.536, 45.456, 45.545, 45.689, 45.597, 45.872, 45.818, 46.275, 46.563, 46.339, 46.386, 46.343, 46.556, 46.858, 47.159, 47.177, 46.974, 47.165, 47.312, 47.233, 47.385, 47.571, 47.714, 47.582, 47.205, 47.158, 47.115, 46.927, 46.838, 46.79, 46.541, 46.554, 46.506, 46.385, 46.528, 46.414, 46.146, 46.101, 46.27, 45.958, 45.784, 45.783, 45.345, 45.234, 45.132, 45.049, 45.071, 45.111, 45.09, 44.874, 44.752, 44.504, 44.378, 44.547, 44.682, 44.476, 44.553, 44.629, 44.623, 44.413, 44.088, 44.171, 44.043, 44.166, 43.963, 43.888, 43.922, 43.892, 43.659, 43.519, 43.597, 43.523, 43.43, 43.184, 42.9, 42.563, 42.267, 41.837, 41.743, 41.859, 41.874, 41.74, 41.514, 41.659, 41.78, 41.864, 41.984, 41.772, 41.539, 41.27, 40.688, 40.462, 40.389, 40.383, 40.243, 40.224, 40.139, 39.905, 39.783, 39.549, 39.366, 39.352, 39.181, 39.029, 38.888, 38.859, 38.834, 38.586, 38.416, 38.133, 37.949, 37.807, 37.519, 37.344, 37.166, 37.289, 37.192, 37.092, 37.078, 37.046, 36.957, 36.56, 36.563, 36.599, 36.785, 36.455, 36.364, 36.35, 36.174, 35.987, 35.761, 35.764, 35.799, 35.727, 35.796, 35.547, 35.428, 35.468, 35.341, 35.261, 34.976, 35.004, 35.164, 34.912, 34.86, 34.961, 34.766, 34.721, 34.642, 34.409, 34.501, 34.231, 34.143, 34.127, 34.232, 34.317, 34.212, 34.279, 34.154, 34.031, 34.062, 33.7, 33.69, 33.554, 33.306, 33.331, 32.946, 32.744, 32.482, 32.519, 32.52, 32.239, 32.325, 32.469, 32.261, 32.26, 32.147, 32.177, 31.809, 31.854, 31.729, 31.527, 31.287, 31.274, 31.216, 31.159, 31.131, 31.035, 31.08, 31.181, 30.816, 30.599, 30.483, 30.472, 30.29, 30.292, 30.328, 30.56, 30.476, 30.45, 30.112, 29.874, 29.651, 29.527, 29.503, 29.306, 29.309, 29.397, 29.359, 29.258, 29.371, 29.26, 29.122, 29.188, 29.131, 29.061, 28.94, 29.1, 29.05, 28.661, 28.425, 28.332, 28.283, 28.186, 27.952, 27.961, 27.778, 27.698, 27.535, 27.435, 27.384, 27.25, 27.208, 27.135, 27.14, 27.151, 26.87, 26.899, 26.657, 26.562, 26.63, 26.464, 26.346, 26.207, 26.251, 26.36, 26.406, 26.365, 26.539, 26.433, 26.147, 26.105, 25.829, 25.92, 25.782, 25.738, 25.837, 25.814, 25.521, 25.402, 25.566, 25.466, 25.209, 25.212, 25.145, 24.982, 24.873, 24.762, 24.997, 24.954, 25.028, 24.975, 24.717, 24.766, 24.83, 24.764, 24.965, 24.605, 24.478, 24.662, 24.694, 24.806, 24.7, 24.639, 24.554, 24.289, 24.193, 24.257, 24.213, 24.289, 24.257, 24.193, 23.964, 23.957, 24.007, 23.801, 23.693, 23.375, 23.13, 23.14, 23.114, 22.961, 22.816, 22.871, 22.586, 22.706, 22.918, 22.935, 22.869, 22.997, 23.121, 23.142, 22.926, 23.117, 23.273, 23.071, 23.043, 23.367, 23.32, 23.345, 23.264, 23.17, 23.018, 22.864, 22.909, 22.898, 22.769, 22.687, 22.753, 22.686, 22.618, 22.66, 22.659, 22.445, 22.459, 22.367, 22.354, 22.403, 22.34, 22.456, 22.452, 22.217, 22.278, 22.159, 22.079, 22.112, 22.058, 22.065, 21.913, 21.892, 21.914, 21.785, 21.808, 21.717, 21.753, 21.918, 21.886, 21.691, 21.596, 21.57, 21.361, 21.387, 21.41, 21.212, 21.279, 21.097, 21.103, 21.046, 20.817, 20.705, 20.688, 20.674, 20.7, 20.563, 20.56, 20.616, 20.784, 20.901, 20.813, 20.782, 20.833, 20.698, 20.677, 20.537, 20.496, 20.492, 20.349, 20.387, 20.454, 20.572, 20.748, 20.88, 20.737, 20.552, 20.379, 20.346, 20.155, 20.165, 20.229, 20.268, 20.418, 20.384, 20.301, 20.169, 20.219, 20.012, 20.073, 20.008, 20.027, 19.957, 19.757, 19.815, 19.766, 19.757, 19.702, 19.595, 19.38, 19.279, 19.288, 19.258, 19.235, 19.106, 19.224, 19.302, 19.394, 19.498, 19.508, 19.474, 19.249, 19.342, 19.205, 19.29, 19.317, 19.192, 19.087, 19.052, 19.052, 19.139, 19.076, 19.161, 19.394, 19.413, 19.39, 19.516, 19.519, 19.488, 19.619, 19.563, 19.638, 19.788, 19.682, 19.633, 19.602, 19.734, 19.678, 19.616, 19.435, 19.335, 19.183, 19.09, 19.073, 19.283, 19.526, 19.369, 19.474, 19.613, 19.462, 19.358, 19.29, 19.282, 19.113, 19.283, 19.455, 19.499, 19.435, 19.522, 19.533, 19.497, 19.708, 19.505, 19.582, 19.562, 19.376, 19.477, 19.567, 19.511, 19.501, 19.422, 19.572, 19.55, 19.539, 19.539, 19.424, 19.5, 19.485, 19.559, 19.489, 19.484, 19.474, 19.41, 19.518, 19.67, 19.515, 19.615, 19.565, 19.612, 19.626, 19.628, 19.695, 19.561, 19.629, 19.443, 19.367, 19.208, 19.283, 19.446, 19.463, 19.466, 19.413, 19.345, 19.335, 19.225, 19.095, 19.047, 18.939, 18.869, 18.85, 19.012, 19.014, 19.029, 19.096, 19.241, 19.165, 19.086, 19.096, 18.911, 18.991, 18.89, 18.973, 19.103, 19.186, 19.238, 19.344, 19.4, 19.277, 19.236, 19.252, 19.17, 19.116, 18.958, 18.75, 19.02, 19.007, 18.95, 18.94, 18.846, 18.767, 18.867, 18.857, 18.915, 18.892, 19.001, 19.001, 18.931, 19.015, 18.792, 18.707, 18.735, 18.822, 18.861, 18.564, 18.457, 18.318, 18.423, 18.454, 18.497, 18.565, 18.488, 18.446, 18.574, 18.467, 18.491, 18.476, 18.549, 18.548, 18.499, 18.53, 18.553, 18.578, 18.573, 18.596, 18.582, 18.547, 18.677, 18.838, 18.871, 18.773, 18.614, 18.587, 18.567, 18.392, 18.336, 18.385, 18.426, 18.286, 18.329, 18.487, 18.45, 18.352, 18.279, 18.361, 18.406, 18.422, 18.346, 18.322, 18.238, 18.24, 18.214, 18.412, 18.338, 18.222, 18.085, 18.209, 18.309, 18.19, 18.286, 18.322, 18.317, 18.568, 18.522, 18.69, 18.684, 18.832, 18.98, 18.936, 18.805, 18.977, 18.869, 18.893, 18.854, 18.814, 18.517, 18.708, 18.742, 18.76, 18.754, 18.562, 18.591, 18.458, 18.244, 18.214, 18.21, 18.316, 18.392, 18.281, 18.279, 18.236, 18.201, 18.052, 17.912, 17.679, 17.586, 17.68, 17.742, 17.708, 17.786, 17.74, 17.857, 17.628, 17.459, 17.49, 17.441, 17.387, 17.557, 17.562, 17.759, 17.512, 17.511, 17.595, 17.62, 17.611, 17.768, 17.804, 17.904, 17.846, 17.837, 17.92, 17.93, 17.85, 17.805, 17.684, 17.658, 17.592, 17.553, 17.591, 17.58, 17.424, 17.473, 17.466, 17.258, 17.271, 17.348, 17.167, 17.226, 17.304, 17.087, 17.039, 17.133, 16.977, 16.848, 16.859, 16.876, 16.919, 17.004, 17.045, 17.133, 17.192, 17.249, 17.345, 17.35, 17.317, 17.478, 17.599, 17.54, 17.502, 17.527, 17.589, 17.665, 17.874, 17.821, 17.803, 17.753, 17.746, 17.688, 17.784, 17.775, 17.861, 17.742, 17.806, 17.823, 17.781, 17.812, 17.81, 17.934, 17.937, 17.962, 17.92, 17.882, 17.951, 17.863, 17.77, 17.758, 17.804, 18.013, 17.963, 18.01, 17.777, 17.815, 17.82, 17.856, 17.705, 17.658, 17.74, 17.709, 17.469, 17.646, 17.608, 17.726, 17.773, 17.868, 17.803, 17.825, 17.764, 17.809, 17.859, 17.871, 17.761, 17.802, 17.906, 17.977, 17.788, 17.959, 17.981, 17.888, 17.821, 17.701, 17.707, 17.64, 17.666, 17.552, 17.505, 17.491, 17.586, 17.663, 17.626, 17.712, 17.677, 17.481, 17.388, 17.224, 17.213, 17.297, 17.368, 17.332, 17.396, 17.453, 17.523, 17.601, 17.605, 17.71, 17.614, 17.545, 17.725, 17.769, 17.813, 17.815, 17.829, 17.795, 17.732, 17.789, 17.839, 17.878, 17.76, 17.691, 17.659, 17.642, 17.62, 17.667, 17.885, 18.065, 18.229, 18.233, 18.255, 18.32, 18.514, 18.444, 18.346, 18.357, 18.327, 18.26, 18.022, 18.006, 17.883, 17.878, 17.776, 17.587, 17.716, 17.726, 17.672, 17.605, 17.696, 17.788, 17.774, 17.767, 17.667, 17.574, 17.556, 17.71, 17.767, 17.72, 18.049, 17.998, 17.944, 17.806, 17.956, 17.873, 17.71, 17.634, 17.7, 17.673, 17.738, 17.788, 17.791, 17.735, 17.714, 17.708, 17.619, 17.753, 17.836, 17.759, 17.652, 17.509, 17.649, 17.751, 17.662, 17.663, 17.743, 17.66, 17.652, 17.691, 17.669, 17.723, 17.503, 17.449, 17.519, 17.416, 17.447, 17.581, 17.694, 17.753, 17.757, 17.821, 17.77, 17.886, 18.01, 17.945, 17.884, 17.817, 17.888, 17.859, 17.659, 17.709, 17.909, 17.721, 17.946, 17.82, 17.817, 17.728, 17.92, 18.061, 18.215, 17.996, 17.908, 17.884, 17.908, 17.998, 18.062, 17.779, 17.649, 17.469, 17.44, 17.533, 17.506, 17.494, 17.473, 17.468, 17.58, 17.534, 17.623, 17.718, 17.711, 17.716, 17.522, 17.37, 17.493, 17.408, 17.301, 17.339, 17.203, 17.083, 17.352, 17.47, 17.372, 17.299, 17.238, 17.357, 17.376, 17.235, 17.422, 17.308, 17.294, 17.333, 17.532, 17.442, 17.343, 17.478, 17.566, 17.738, 17.811, 17.758, 17.685, 17.659, 17.766, 17.746, 17.769, 17.678, 17.796, 17.761, 17.958, 17.965, 18.023, 17.991, 17.871, 17.738, 17.652, 17.653, 17.721, 17.776, 17.598]
chr_len_Q2 = [44, 44.0, 44.0, 44.0, 44.0, 44.0, 44.0, 44.0, 45.0, 45.0, 44.0, 44.0, 44.0, 44.0, 44.0, 44.0, 43.0, 43.0, 43.0, 44.0, 44.0, 44.0, 44.0, 44.0, 44.0, 44.0, 44.0, 44.0, 44.0, 44.0, 45.0, 44.0, 44.0, 45.0, 45.0, 44.0, 44.0, 43.0, 44.0, 44.0, 43.0, 43.0, 42.0, 43.0, 43.0, 43.0, 43.0, 43.0, 41.0, 41.0, 42.0, 42.0, 42.0, 41.0, 40.0, 41.0, 41.0, 40.0, 41.0, 40.0, 40.5, 40.0, 40.0, 40.0, 40.0, 40.0, 40.0, 39.0, 40.0, 40.0, 40.0, 40.0, 40.0, 39.0, 39.0, 39.0, 39.0, 39.0, 39.0, 39.0, 39.0, 39.0, 38.0, 38.0, 37.0, 37.0, 37.0, 37.0, 37.0, 36.0, 37.0, 37.0, 36.0, 36.0, 36.0, 36.0, 36.0, 36.0, 36.0, 36.0, 35.0, 36.0, 35.0, 35.0, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0, 34.0, 33.0, 33.0, 33.0, 32.0, 33.0, 33.0, 33.0, 33.0, 33.0, 32.0, 32.0, 32.0, 32.0, 32.0, 31.0, 31.0, 31.0, 31.0, 31.0, 31.0, 31.0, 30.0, 29.0, 30.0, 30.0, 30.0, 29.5, 29.0, 29.0, 29.0, 29.0, 28.0, 28.0, 29.0, 29.0, 28.0, 27.5, 28.0, 28.0, 27.0, 27.0, 26.0, 27.0, 26.0, 27.0, 26.0, 26.0, 27.0, 27.0, 27.0, 26.0, 26.0, 26.0, 26.0, 26.0, 26.0, 27.0, 26.0, 26.0, 26.0, 25.0, 25.0, 25.0, 25.0, 25.0, 25.0, 25.0, 25.0, 25.0, 24.0, 24.0, 24.0, 25.0, 25.0, 25.0, 25.0, 24.0, 24.0, 24.0, 24.0, 24.0, 23.0, 23.0, 23.0, 23.0, 23.0, 23.0, 23.0, 23.0, 23.0, 23.0, 23.0, 22.5, 23.0, 22.0, 22.0, 22.0, 23.0, 23.0, 23.0, 22.0, 22.0, 21.5, 21.0, 21.0, 21.0, 21.0, 22.0, 22.0, 21.0, 21.0, 21.0, 22.0, 21.0, 21.0, 21.0, 21.0, 21.0, 22.0, 21.0, 21.0, 21.0, 21.0, 21.0, 21.0, 21.0, 21.0, 21.0, 21.0, 20.5, 21.0, 20.0, 20.0, 20.0, 19.0, 19.0, 19.0, 19.0, 20.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 19.0, 18.0, 19.0, 19.0, 19.0, 18.0, 18.5, 18.0, 18.0, 18.0, 18.0, 18.0, 18.0, 18.0, 17.0, 17.0, 17.0, 18.0, 17.5, 17.5, 18.0, 18.0, 17.0, 18.0, 18.0, 18.0, 18.0, 18.0, 18.0, 18.0, 18.0, 18.0, 17.0, 17.0, 17.0, 17.0, 17.0, 17.5, 18.0, 17.0, 17.0, 17.0, 17.0, 17.0, 17.0, 17.0, 17.0, 17.0, 16.0, 16.5, 16.0, 16.0, 16.0, 16.0, 17.0, 16.0, 16.5, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 17.0, 17.0, 17.0, 17.0, 17.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 16.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 16.0, 16.0, 16.0, 16.0, 15.0, 15.0, 15.0, 16.0, 16.0, 16.0, 15.0, 15.0, 15.0, 15.0, 15.0, 16.0, 15.0, 16.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 14.0, 14.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 15.0, 14.0, 15.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 15.0, 15.0, 14.5, 14.0, 14.0, 15.0, 14.5, 14.0, 15.0, 15.0, 15.0, 15.0, 14.5, 14.0, 14.0, 14.5, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 13.0, 13.0, 13.5, 14.0, 14.0, 13.5, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 13.0, 14.0, 13.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 13.0, 13.0, 13.0, 13.0, 14.0, 14.0, 14.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 14.0, 14.0, 13.5, 14.0, 13.0, 13.0, 14.0, 14.0, 14.0, 14.0, 13.0, 13.0, 13.0, 13.0, 14.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 14.0, 13.5, 13.0, 13.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 13.0, 14.0, 14.0, 13.0, 13.0, 13.0, 13.0, 13.5, 13.0, 13.0, 13.0, 13.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 14.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 14.0, 13.0, 13.0, 13.0, 13.0, 14.0, 14.0, 13.0, 13.5, 13.5, 14.0, 13.0, 14.0, 14.0, 14.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 12.0, 12.0, 13.0, 12.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.5, 14.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 14.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 12.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 14.0, 14.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 14.0, 13.0, 13.0, 14.0, 14.0, 14.0, 13.0, 13.0, 14.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 14.0, 13.0, 14.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.5, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0, 13.0]
"""
chr_len_100 = [100.0, 105.775, 107.979, 109.778, 110.28, 112.58, 111.003, 111.983, 109.025, 111.835, 112.181, 108.464, 109.785, 106.974, 107.69, 104.887, 104.868, 103.858, 99.767, 100.475, 101.391, 98.957, 96.818, 96.024, 96.086, 93.929, 94.127, 93.335, 91.072, 90.673, 89.724, 89.476, 88.689, 86.053, 85.411, 85.395, 84.578, 82.336, 83.01, 83.807, 81.194, 81.229, 79.965, 81.086, 79.698, 78.986, 78.379, 77.022, 78.709, 76.129, 78.377, 75.454, 74.611, 74.069, 74.443, 72.791, 74.738, 72.595, 73.762, 71.364, 70.984, 70.932, 70.749, 71.908, 69.596, 71.198, 69.467, 70.354, 68.768, 70.266, 69.473, 68.569, 68.75, 66.701, 65.545, 66.021, 67.132, 66.418, 66.964, 67.123, 65.411, 66.101, 65.496, 62.924, 64.764, 64.129, 64.895, 62.96, 63.32, 63.403, 63.674, 63.598, 62.938, 62.493, 63.008, 63.157, 63.093, 62.094, 62.239, 62.898, 63.04]
L_unique_100 = [100.0, 90.096, 82.236, 76.8, 71.025, 67.152, 63.068, 59.727, 56.724, 54.044, 51.992, 49.405, 47.412, 44.93, 43.54, 41.845, 41.041, 38.924, 36.741, 36.294, 35.138, 33.453, 32.425, 31.653, 30.997, 29.71, 29.101, 28.682, 27.371, 26.799, 26.171, 25.362, 24.883, 23.987, 23.49, 22.958, 22.816, 21.964, 21.719, 21.431, 20.937, 20.488, 20.148, 20.142, 19.408, 19.395, 18.778, 18.41, 18.385, 17.885, 17.633, 17.606, 17.148, 16.966, 16.86, 16.455, 16.304, 15.941, 16.112, 15.752, 15.352, 15.454, 15.278, 15.17, 14.841, 14.536, 14.608, 14.63, 14.323, 14.235, 14.121, 13.855, 13.915, 13.748, 13.543, 13.453, 13.437, 13.351, 13.23, 13.083, 12.914, 12.992, 12.817, 12.752, 12.745, 12.666, 12.597, 12.499, 12.49, 12.389, 12.349, 12.278, 12.172, 12.15, 12.067, 12.027, 11.983, 11.977, 11.89, 11.907, 11.869]
LG50_100 = [49.0, 36.677, 29.131, 25.111, 21.656, 19.408, 17.759, 16.047, 15.163, 13.841, 13.154, 12.333, 11.471, 10.688, 10.21, 9.761, 9.476, 8.864, 8.325, 8.036, 7.75, 7.253, 6.947, 6.76, 6.65, 6.261, 6.073, 5.959, 5.626, 5.465, 5.335, 5.059, 4.977, 4.74, 4.606, 4.421, 4.43, 4.177, 4.181, 4.065, 4.037, 3.859, 3.789, 3.75, 3.557, 3.584, 3.479, 3.306, 3.328, 3.238, 3.183, 3.191, 3.038, 3.035, 2.942, 2.875, 2.828, 2.756, 2.771, 2.653, 2.594, 2.641, 2.562, 2.564, 2.49, 2.386, 2.382, 2.414, 2.324, 2.352, 2.333, 2.226, 2.279, 2.251, 2.22, 2.143, 2.146, 2.138, 2.085, 2.058, 2.099, 2.083, 2.009, 2.05, 2.0, 1.992, 1.961, 1.965, 1.912, 1.917, 1.926, 1.919, 1.885, 1.82, 1.818, 1.853, 1.845, 1.82, 1.802, 1.809, 1.776]
chr_len_50 = [50.0, 60.677, 67.548, 71.942, 74.396, 75.664, 78.597, 80.25, 80.127, 80.735, 80.81, 80.946, 80.739, 81.702, 79.558, 80.152, 78.795, 81.583, 81.196, 79.532, 78.739, 77.642, 78.431, 78.38, 77.742, 78.354, 75.278, 77.579, 75.347, 76.432, 73.62, 73.651, 75.166, 74.533, 72.831, 72.268, 72.905, 72.297, 73.966, 71.532, 72.352, 71.192, 71.256, 70.675, 70.533, 68.726, 69.48, 70.087, 69.314, 70.254, 66.076, 67.753, 66.434, 67.55, 68.227, 66.502, 67.561, 65.564, 65.732, 65.635, 66.405, 65.007, 65.927, 63.642, 65.161, 65.386, 66.393, 63.636, 62.921, 63.256, 63.048, 65.047, 63.738, 61.73, 62.961, 64.789, 63.152, 62.178, 61.366, 62.439, 61.324, 61.757, 62.866, 62.413, 60.146, 60.286, 59.668, 60.893, 59.617, 60.948, 60.101, 60.89, 59.807, 59.942, 60.897, 61.105, 59.049, 60.581, 59.358, 59.012, 59.263]
L_unique_50 = [50.0, 45.586, 42.968, 40.611, 38.254, 36.557, 34.955, 33.868, 32.152, 31.166, 29.685, 28.76, 27.951, 27.195, 26.128, 25.431, 24.744, 24.307, 23.339, 23.098, 22.402, 21.662, 21.438, 21.018, 20.486, 20.208, 19.515, 19.44, 18.856, 18.676, 18.303, 17.997, 17.949, 17.554, 17.079, 17.009, 16.829, 16.587, 16.224, 16.058, 15.987, 15.679, 15.74, 15.274, 15.143, 15.037, 14.903, 14.689, 14.508, 14.665, 14.152, 14.095, 13.776, 13.884, 13.893, 13.595, 13.652, 13.467, 13.26, 13.16, 13.203, 13.154, 12.964, 12.851, 12.821, 12.671, 12.713, 12.604, 12.446, 12.417, 12.377, 12.381, 12.27, 12.259, 12.17, 12.107, 12.062, 12.012, 11.82, 11.827, 11.879, 11.834, 11.724, 11.652, 11.652, 11.588, 11.566, 11.563, 11.534, 11.402, 11.378, 11.32, 11.383, 11.278, 11.216, 11.259, 11.192, 11.198, 11.094, 11.159, 11.12]
LG50_50 = [24.0, 16.347, 13.316, 11.744, 10.496, 9.676, 8.837, 8.361, 7.698, 7.419, 6.91, 6.591, 6.246, 5.982, 5.684, 5.335, 5.248, 5.108, 4.804, 4.729, 4.6, 4.403, 4.262, 4.132, 4.037, 3.92, 3.772, 3.698, 3.556, 3.514, 3.449, 3.347, 3.295, 3.222, 3.107, 3.102, 3.002, 2.927, 2.827, 2.819, 2.827, 2.681, 2.778, 2.651, 2.603, 2.564, 2.515, 2.473, 2.433, 2.446, 2.362, 2.363, 2.313, 2.276, 2.278, 2.26, 2.253, 2.191, 2.115, 2.13, 2.127, 2.137, 2.059, 2.055, 2.026, 1.966, 1.998, 1.972, 1.986, 1.921, 1.899, 1.892, 1.881, 1.915, 1.852, 1.89, 1.829, 1.839, 1.864, 1.852, 1.839, 1.81, 1.756, 1.767, 1.76, 1.762, 1.773, 1.729, 1.736, 1.718, 1.685, 1.717, 1.705, 1.675, 1.648, 1.642, 1.642, 1.686, 1.644, 1.621, 1.668]
chr_len_20 = [20.0, 30.9, 38.912, 43.093, 46.068, 51.085, 52.967, 53.689, 55.752, 56.554, 57.975, 57.248, 57.861, 59.143, 60.843, 59.993, 59.698, 58.856, 60.398, 60.889, 60.696, 60.308, 61.769, 61.262, 60.378, 62.263, 59.551, 59.761, 61.308, 63.033, 59.7, 60.503, 61.361, 61.28, 61.568, 60.96, 60.147, 61.51, 60.817, 60.329, 59.497, 60.618, 62.011, 60.816, 59.81, 59.855, 58.685, 60.074, 61.009, 58.981, 60.041, 60.819, 59.263, 58.389, 60.105, 58.357, 59.68, 60.149, 57.797, 58.714, 58.154, 58.465, 58.679, 58.648, 57.857, 58.547, 59.24, 59.812, 58.468, 59.369, 58.903, 58.646, 57.491, 57.048, 58.32, 59.119, 57.065, 56.961, 56.787, 56.658, 58.537, 57.289, 57.799, 56.409, 56.947, 58.115, 58.221, 57.284, 56.424, 57.579, 56.862, 58.731, 56.918, 57.777, 55.197, 56.911, 55.92, 57.629, 57.861, 56.824, 55.384]
L_unique_20 = [20.0, 19.052, 18.392, 17.715, 17.204, 16.86, 16.487, 16.133, 15.749, 15.581, 15.25, 14.945, 14.785, 14.571, 14.382, 14.198, 13.853, 13.809, 13.642, 13.556, 13.452, 13.282, 13.204, 13.071, 12.969, 12.9, 12.782, 12.682, 12.55, 12.494, 12.373, 12.364, 12.342, 12.295, 12.154, 12.118, 11.917, 11.995, 11.892, 11.861, 11.731, 11.684, 11.619, 11.649, 11.546, 11.501, 11.439, 11.469, 11.474, 11.326, 11.326, 11.359, 11.27, 11.276, 11.135, 11.182, 11.177, 11.182, 11.064, 11.089, 11.0, 11.001, 10.977, 10.978, 10.915, 10.929, 10.878, 10.93, 10.865, 10.882, 10.799, 10.747, 10.774, 10.778, 10.721, 10.692, 10.682, 10.646, 10.622, 10.733, 10.666, 10.589, 10.63, 10.622, 10.627, 10.581, 10.548, 10.557, 10.502, 10.508, 10.487, 10.501, 10.496, 10.473, 10.414, 10.445, 10.415, 10.439, 10.447, 10.436, 10.382]
LG50_20 = [9.0, 5.959, 5.024, 4.521, 4.125, 3.861, 3.665, 3.527, 3.293, 3.172, 3.135, 2.981, 2.871, 2.826, 2.727, 2.671, 2.575, 2.515, 2.447, 2.434, 2.368, 2.342, 2.3, 2.283, 2.218, 2.187, 2.166, 2.135, 2.121, 2.071, 2.012, 2.038, 1.975, 1.97, 1.938, 1.948, 1.913, 1.918, 1.866, 1.877, 1.841, 1.805, 1.794, 1.794, 1.822, 1.782, 1.756, 1.722, 1.769, 1.719, 1.734, 1.758, 1.687, 1.738, 1.694, 1.691, 1.666, 1.644, 1.707, 1.656, 1.626, 1.635, 1.598, 1.639, 1.597, 1.628, 1.586, 1.597, 1.576, 1.631, 1.567, 1.592, 1.591, 1.578, 1.538, 1.535, 1.555, 1.519, 1.498, 1.598, 1.517, 1.572, 1.536, 1.557, 1.558, 1.542, 1.51, 1.511, 1.532, 1.519, 1.484, 1.516, 1.506, 1.487, 1.496, 1.473, 1.531, 1.5, 1.496, 1.488, 1.516]
chr_len_50_cir = [50.0, 62.68, 66.57, 71.09333333333333, 76.23333333333333, 75.76333333333334, 78.76333333333334, 80.62333333333333, 82.08333333333333, 85.14666666666666, 85.35666666666667, 82.28666666666666, 80.10666666666667, 82.10333333333334, 79.46666666666667, 81.48333333333333, 80.70333333333333, 80.55, 80.97, 77.6, 80.73666666666666, 77.38333333333334, 78.88666666666667, 76.81333333333333, 79.26, 76.87333333333333, 79.24333333333334, 78.72666666666667, 76.01, 78.07333333333334, 73.30666666666667, 75.08, 71.40333333333334, 71.79, 72.09, 74.43, 70.97, 72.26666666666667, 71.02666666666667, 75.38333333333334, 72.4, 72.55, 69.92333333333333, 69.63, 69.11666666666666, 71.05333333333333, 69.43, 71.53, 68.75666666666666, 69.16333333333333, 65.04333333333334, 68.55333333333333, 68.93333333333334, 65.75, 70.55333333333333, 69.12, 65.01666666666667, 64.34666666666666, 68.00333333333333, 66.31333333333333, 67.74333333333334, 65.80666666666667, 63.64333333333333, 65.58666666666667, 66.67333333333333, 61.95666666666666, 61.906666666666666, 64.61333333333333, 60.666666666666664, 61.85, 62.55, 62.903333333333336, 63.46333333333333, 64.78666666666666, 63.763333333333335, 62.513333333333335, 60.17666666666667, 61.88333333333333, 59.553333333333335, 61.81333333333333, 62.08, 61.35, 59.86, 59.903333333333336, 59.373333333333335, 60.92, 56.25666666666667, 62.43, 60.61666666666667, 59.233333333333334, 64.45333333333333, 61.08, 60.72, 63.13, 59.086666666666666, 59.17666666666667, 57.766666666666666, 59.31333333333333, 62.00666666666667, 58.693333333333335, 59.45333333333333]
L_unique_50_cir = [50.0, 46.61333333333334, 42.95, 40.61, 38.803333333333335, 36.12, 35.33, 34.04333333333334, 32.516666666666666, 31.536666666666665, 30.966666666666665, 29.173333333333332, 27.963333333333335, 26.85333333333333, 25.913333333333334, 25.60333333333333, 25.15, 24.336666666666666, 23.616666666666667, 22.673333333333332, 22.68, 21.813333333333333, 21.723333333333333, 20.863333333333333, 21.073333333333334, 20.10333333333333, 20.18, 19.623333333333335, 19.17, 18.863333333333333, 18.25, 18.02, 17.513333333333332, 17.243333333333332, 17.2, 17.28, 16.64, 16.8, 16.333333333333332, 16.196666666666665, 15.873333333333333, 15.466666666666667, 14.953333333333333, 15.09, 15.526666666666667, 15.176666666666666, 14.843333333333334, 14.663333333333334, 14.716666666666667, 14.403333333333334, 14.393333333333333, 14.26, 14.06, 13.993333333333334, 13.916666666666666, 13.59, 13.436666666666667, 13.54, 13.483333333333333, 13.273333333333333, 13.22, 13.103333333333333, 13.023333333333333, 13.03, 12.803333333333333, 12.7, 12.573333333333334, 12.513333333333334, 12.586666666666666, 12.393333333333333, 12.306666666666667, 12.256666666666666, 12.35, 12.27, 12.19, 11.923333333333334, 12.07, 11.99, 11.886666666666667, 11.94, 12.0, 11.753333333333334, 11.75, 11.486666666666666, 11.64, 11.553333333333333, 11.45, 11.49, 11.533333333333333, 11.446666666666667, 11.543333333333333, 11.33, 11.316666666666666, 11.403333333333334, 11.323333333333334, 11.186666666666667, 11.286666666666667, 11.16, 11.3, 11.233333333333333, 11.133333333333333]
LG50_50_cir = [24.0, 16.54, 13.506666666666666, 11.856666666666667, 10.666666666666666, 9.516666666666667, 9.003333333333334, 8.433333333333334, 7.693333333333333, 7.3966666666666665, 7.096666666666667, 6.536666666666667, 6.373333333333333, 5.87, 5.636666666666667, 5.473333333333334, 5.273333333333333, 5.096666666666667, 4.863333333333333, 4.68, 4.55, 4.336666666666667, 4.383333333333334, 4.133333333333334, 4.193333333333333, 3.8866666666666667, 3.8233333333333333, 3.8266666666666667, 3.6366666666666667, 3.49, 3.4966666666666666, 3.3733333333333335, 3.256666666666667, 3.2, 3.1166666666666667, 3.1333333333333333, 3.05, 2.9566666666666666, 2.8766666666666665, 2.776666666666667, 2.85, 2.66, 2.56, 2.6333333333333333, 2.683333333333333, 2.6466666666666665, 2.46, 2.4133333333333336, 2.533333333333333, 2.41, 2.4266666666666667, 2.37, 2.276666666666667, 2.2666666666666666, 2.31, 2.2733333333333334, 2.2133333333333334, 2.24, 2.21, 2.0, 2.1466666666666665, 2.0766666666666667, 2.04, 2.13, 2.0166666666666666, 1.9933333333333334, 2.026666666666667, 1.98, 2.0, 1.96, 1.9933333333333334, 1.87, 1.9066666666666667, 1.7833333333333334, 1.8733333333333333, 1.8033333333333332, 1.84, 1.84, 1.83, 1.8266666666666667, 1.8066666666666666, 1.7866666666666666, 1.84, 1.7166666666666666, 1.7966666666666666, 1.7033333333333334, 1.8, 1.68, 1.7933333333333332, 1.7633333333333334, 1.68, 1.6633333333333333, 1.6833333333333333, 1.72, 1.6966666666666668, 1.66, 1.6833333333333333, 1.6233333333333333, 1.6766666666666667, 1.6866666666666668, 1.62]
chr_len = [chr_len_100, chr_len_50, chr_len_20]
L_unique = [L_unique_100, L_unique_50, L_unique_20]
# Test plot_chr_len
#plot_chr_len([0, 1], chr_len=[40.0, 43.0], L_unique=[20.0, 22.0], num_essential=4, simulations=10, SD_chr_len=[2,1])
plot_chr_len(SCRaMbLEd_events, chr_len, L_unique=L_unique, num_essential=num_essential, simulations=simulations)
#plot_chr_len(SCRaMbLEd_events, chr_len_20, L_unique_20, num_essential, simulations)
# P(DEL)/P(DUP) = 1
# P(DEL)/P(DUP) = 1/2
# Many lines
# One line with standard deviation
# Circular?