Skip to content

Commit 3048b57

Browse files
committed
metaplotter_pl_timescale: Import read_data() from metaplotter instead
1 parent 5c67521 commit 3048b57

3 files changed

+29
-138
lines changed

metaplotter.py

+27-26
Original file line numberDiff line numberDiff line change
@@ -128,32 +128,33 @@ def plotting(output_label, timeseries_dict, riskmodelsetting1, riskmodelsetting2
128128
plt.savefig(outputfilename)
129129
plt.show()
130130

131-
timeseries = read_data()
131+
if __name__ == "__main__":
132+
timeseries = read_data()
132133

133-
# for just two different riskmodel settings
134-
plotting(output_label="fig_contracts_survival_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", \
135-
riskmodelsetting2="two", series1="contracts", series2="operational", plottype1="mean", plottype2="median")
136-
plotting(output_label="fig_reinsurers_contracts_survival_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", \
137-
riskmodelsetting2="two", series1="reincontracts", series2="reinoperational", plottype1="mean", plottype2="median")
138-
plotting(output_label="fig_premium_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", riskmodelsetting2="two", \
139-
series1="premium", series2=None, plottype1="mean", plottype2=None)
134+
# for just two different riskmodel settings
135+
plotting(output_label="fig_contracts_survival_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", \
136+
riskmodelsetting2="two", series1="contracts", series2="operational", plottype1="mean", plottype2="median")
137+
plotting(output_label="fig_reinsurers_contracts_survival_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", \
138+
riskmodelsetting2="two", series1="reincontracts", series2="reinoperational", plottype1="mean", plottype2="median")
139+
plotting(output_label="fig_premium_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", riskmodelsetting2="two", \
140+
series1="premium", series2=None, plottype1="mean", plottype2=None)
140141

141-
raise SystemExit
142-
# for four different riskmodel settings
143-
plotting(output_label="fig_contracts_survival_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", \
144-
riskmodelsetting2="two", series1="contracts", series2="operational", additionalriskmodelsetting3="three", \
145-
additionalriskmodelsetting4="four", plottype1="mean", plottype2="median")
146-
plotting(output_label="fig_contracts_survival_3_4", timeseries_dict=timeseries, riskmodelsetting1="three", \
147-
riskmodelsetting2="four", series1="contracts", series2="operational", additionalriskmodelsetting3="one", \
148-
additionalriskmodelsetting4="two", plottype1="mean", plottype2="median")
149-
plotting(output_label="fig_reinsurers_contracts_survival_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", \
150-
riskmodelsetting2="two", series1="reincontracts", series2="reinoperational", \
151-
additionalriskmodelsetting3="three", additionalriskmodelsetting4="four", plottype1="mean", plottype2="median")
152-
plotting(output_label="fig_reinsurers_contracts_survival_3_4", timeseries_dict=timeseries, riskmodelsetting1="three", \
153-
riskmodelsetting2="four", series1="reincontracts", series2="reinoperational", \
154-
additionalriskmodelsetting3="one", additionalriskmodelsetting4="two", plottype1="mean", plottype2="median")
155-
plotting(output_label="fig_premium_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", riskmodelsetting2="two", \
156-
series1="premium", series2=None, additionalriskmodelsetting3="three", additionalriskmodelsetting4="four", \
157-
plottype1="mean", plottype2=None)
142+
raise SystemExit
143+
# for four different riskmodel settings
144+
plotting(output_label="fig_contracts_survival_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", \
145+
riskmodelsetting2="two", series1="contracts", series2="operational", additionalriskmodelsetting3="three", \
146+
additionalriskmodelsetting4="four", plottype1="mean", plottype2="median")
147+
plotting(output_label="fig_contracts_survival_3_4", timeseries_dict=timeseries, riskmodelsetting1="three", \
148+
riskmodelsetting2="four", series1="contracts", series2="operational", additionalriskmodelsetting3="one", \
149+
additionalriskmodelsetting4="two", plottype1="mean", plottype2="median")
150+
plotting(output_label="fig_reinsurers_contracts_survival_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", \
151+
riskmodelsetting2="two", series1="reincontracts", series2="reinoperational", \
152+
additionalriskmodelsetting3="three", additionalriskmodelsetting4="four", plottype1="mean", plottype2="median")
153+
plotting(output_label="fig_reinsurers_contracts_survival_3_4", timeseries_dict=timeseries, riskmodelsetting1="three", \
154+
riskmodelsetting2="four", series1="reincontracts", series2="reinoperational", \
155+
additionalriskmodelsetting3="one", additionalriskmodelsetting4="two", plottype1="mean", plottype2="median")
156+
plotting(output_label="fig_premium_1_2", timeseries_dict=timeseries, riskmodelsetting1="one", riskmodelsetting2="two", \
157+
series1="premium", series2=None, additionalriskmodelsetting3="three", additionalriskmodelsetting4="four", \
158+
plottype1="mean", plottype2=None)
158159

159-
#pdb.set_trace()
160+
#pdb.set_trace()

metaplotter_pl_timescale.py

+1-56
Original file line numberDiff line numberDiff line change
@@ -5,63 +5,8 @@
55
import time
66
import glob
77

8-
def read_data():
9-
# do not overwrite old pdfs
10-
#if os.path.exists("data/fig_one_and_two_rm_comp.pdf"):
11-
# os.rename("data/fig_one_and_two_rm_comp.pdf", "data/fig_one_and_two_rm_comp_old_" + time.strftime('%Y_%b_%d_%H_%M') + ".pdf")
12-
#if os.path.exists("data/fig_three_and_four_rm_comp.pdf"):
13-
# os.rename("data/fig_three_and_four_rm_comp.pdf", "data/fig_three_and_four_rm_comp_old_" + time.strftime('%Y_%b_%d_%H_%M') + ".pdf")
8+
from metaplotter import read_data
149

15-
upper_bound = 75
16-
lower_bound = 25
17-
18-
timeseries_dict = {}
19-
timeseries_dict["mean"] = {}
20-
timeseries_dict["median"] = {}
21-
timeseries_dict["quantile25"] = {}
22-
timeseries_dict["quantile75"] = {}
23-
24-
filenames_ones = glob.glob("data/one*.dat")
25-
filenames_twos = glob.glob("data/two*.dat")
26-
filenames_threes = glob.glob("data/three*.dat")
27-
filenames_fours = glob.glob("data/four*.dat")
28-
filenames_ones.sort()
29-
filenames_twos.sort()
30-
filenames_threes.sort()
31-
filenames_fours.sort()
32-
33-
#assert len(filenames_ones) == len(filenames_twos) == len(filenames_threes) == len(filenames_fours)
34-
all_filenames = filenames_ones + filenames_twos + filenames_threes + filenames_fours
35-
36-
for filename in all_filenames:
37-
# read files
38-
rfile = open(filename, "r")
39-
data = [eval(k) for k in rfile]
40-
rfile.close()
41-
42-
# compute data series
43-
data_means = []
44-
data_medians = []
45-
data_q25 = []
46-
data_q75 = []
47-
for i in range(len(data[0])):
48-
data_means.append(np.mean([item[i] for item in data]))
49-
data_q25.append(np.percentile([item[i] for item in data], lower_bound))
50-
data_q75.append(np.percentile([item[i] for item in data], upper_bound))
51-
data_medians.append(np.median([item[i] for item in data]))
52-
data_means = np.array(data_means)
53-
data_medians = np.array(data_medians)
54-
data_q25 = np.array(data_q25)
55-
data_q75 = np.array(data_q75)
56-
57-
# record data series
58-
timeseries_dict["mean"][filename] = data_means
59-
timeseries_dict["median"][filename] = data_medians
60-
timeseries_dict["quantile25"][filename] = data_q25
61-
timeseries_dict["quantile75"][filename] = data_q75
62-
return timeseries_dict
63-
64-
6510

6611
def plotting(output_label, timeseries_dict, riskmodelsetting1, riskmodelsetting2, series1, series2=None, additionalriskmodelsetting3=None, additionalriskmodelsetting4=None, plottype1="mean", plottype2="mean"):
6712
# dictionaries

metaplotter_pl_timescale_additional_measures.py

+1-56
Original file line numberDiff line numberDiff line change
@@ -5,63 +5,8 @@
55
import time
66
import glob
77

8-
def read_data():
9-
# do not overwrite old pdfs
10-
#if os.path.exists("data/fig_one_and_two_rm_comp.pdf"):
11-
# os.rename("data/fig_one_and_two_rm_comp.pdf", "data/fig_one_and_two_rm_comp_old_" + time.strftime('%Y_%b_%d_%H_%M') + ".pdf")
12-
#if os.path.exists("data/fig_three_and_four_rm_comp.pdf"):
13-
# os.rename("data/fig_three_and_four_rm_comp.pdf", "data/fig_three_and_four_rm_comp_old_" + time.strftime('%Y_%b_%d_%H_%M') + ".pdf")
8+
from metaplotter import read_data
149

15-
upper_bound = 75
16-
lower_bound = 25
17-
18-
timeseries_dict = {}
19-
timeseries_dict["mean"] = {}
20-
timeseries_dict["median"] = {}
21-
timeseries_dict["quantile25"] = {}
22-
timeseries_dict["quantile75"] = {}
23-
24-
filenames_ones = glob.glob("data/one*.dat")
25-
filenames_twos = glob.glob("data/two*.dat")
26-
filenames_threes = glob.glob("data/three*.dat")
27-
filenames_fours = glob.glob("data/four*.dat")
28-
filenames_ones.sort()
29-
filenames_twos.sort()
30-
filenames_threes.sort()
31-
filenames_fours.sort()
32-
33-
#assert len(filenames_ones) == len(filenames_twos) == len(filenames_threes) == len(filenames_fours)
34-
all_filenames = filenames_ones + filenames_twos + filenames_threes + filenames_fours
35-
36-
for filename in all_filenames:
37-
# read files
38-
rfile = open(filename, "r")
39-
data = [eval(k) for k in rfile]
40-
rfile.close()
41-
42-
# compute data series
43-
data_means = []
44-
data_medians = []
45-
data_q25 = []
46-
data_q75 = []
47-
for i in range(len(data[0])):
48-
data_means.append(np.mean([item[i] for item in data]))
49-
data_q25.append(np.percentile([item[i] for item in data], lower_bound))
50-
data_q75.append(np.percentile([item[i] for item in data], upper_bound))
51-
data_medians.append(np.median([item[i] for item in data]))
52-
data_means = np.array(data_means)
53-
data_medians = np.array(data_medians)
54-
data_q25 = np.array(data_q25)
55-
data_q75 = np.array(data_q75)
56-
57-
# record data series
58-
timeseries_dict["mean"][filename] = data_means
59-
timeseries_dict["median"][filename] = data_medians
60-
timeseries_dict["quantile25"][filename] = data_q25
61-
timeseries_dict["quantile75"][filename] = data_q75
62-
return timeseries_dict
63-
64-
6510

6611
def plotting(output_label, timeseries_dict, riskmodelsetting1, riskmodelsetting2, series1, series2=None, additionalriskmodelsetting3=None, additionalriskmodelsetting4=None, plottype1="mean", plottype2="mean"):
6712
# dictionaries

0 commit comments

Comments
 (0)