Отрисовка графиков в двух циклах
Подскажите, как исправить следующий код:
def Rayleigh_background_usa_two(data, p, m):
wv = data['Wavelenhgt, nm']
usa = data['Absorbance, dry Nafion_no acid']
usa_good = []
for i in range(len(wv)):
new_usa = usa[i] - m*1e8 / (wv[i] - p) ** 4
usa_good.append(new_usa)
return usa_good
def plot_pro_all_two(data):
wv = data['Wavelenhgt, nm']
massive_p = np.arange(1, 98, 5)
massive_m = np.arange(0.1, 2.1, 0.1)
#massive = list(itertools.product(massive_m, massive_p, repeat=1))
Ray_list = []
for k in range(len(massive_m)):
plt.figure(figsize=(16, 12)) #задаем размер графика
for l in range(len(massive_m)):
Ray = Rayleigh_background_usa_two(data, massive_p[k], massive_m[l])
Ray_list.append(Ray)
plt.plot(wv[10:400], Ray_list[k][10:400], label=f'Absorbance, dry Nafion_no acid, $\lambda$={np.round(massive_p[k], 2)}, m={np.round(massive_m[k], 2)}')
plt.xlabel('Wavelength, nm')
plt.ylabel('Absorbance')
plt.legend()
plt.show()
Т.е. я ожидал, что для каждого графика при постоянном m меняется lambda (т.е. должно получиться 20 графиков), но вместо этого рисуется те же 20 графиков с не меняющимися параметрами на каждом((
Источник: Stack Overflow на русском