how do I condense these lines of code and say, if I want to plot all 3 graphs separately, how do I use the matplotlib subplot function to do it? below is what I've done but am unsure of how to condense it:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
sns.set()
totalpop = 18000
subpop = [300, 400, 500]
samplesize_list1 = [10, 20, 30] #sample size 60
samplesize_list2 = [40, 50, 60] #sample size 150
samplesize_list3 = [70, 80, 90] #sample size 240
label_list = ['size60', 'size150', 'size240']
std_list = [300, 500, 700]
mean_list = [450, 670, 780]
repeat = 500 #repeated random sampling of 500 sampling outcomes
samplingdist1 = []
for i in range(500):
sample1 = []
for i in range(len(samplesize_list1)):
for j in range(samplesize_list1[i]):
s = 0
while True:
s = np.random.normal(mean_list[i], std_list[i], 1).tolist()
if s[0] > 0:
break
sample1 += s
samplingdist1.append(np.median(sample1))
sns.distplot(samplingdist1, label = 'size60')
samplingdist2 = []
for i in range(500):
sample2 = []
for i in range(len(samplesize_list2)):
for j in range(samplesize_list2[i]):
s = 0
while True:
s = np.random.normal(mean_list[i], std_list[i], 1).tolist()
if s[0] > 0:
break
sample2 += s
samplingdist2.append(np.median(sample2))
sns.distplot(samplingdist2, label = 'size150')
samplingdist3 = []
for i in range(500):
sample3 = []
for i in range(len(samplesize_list3)):
for j in range(samplesize_list3[i]):
s = 0
while True:
s = np.random.normal(mean_list[i], std_list[i], 1).tolist()
if s[0] > 0:
break
sample3 += s
samplingdist3.append(np.median(sample3))
sns.distplot(samplingdist3, label = 'size240')
the graphs I got from this were plotted in a single graph, say I want to plot them separately and label it 'size60' 'size150' 'size240' respectively. how do I approach this?