Location: Blood HbO2 and HbCO2 Dissociation Curves @ f725b6864f22 / Figure04_plot.py

Author:
nima <nafs080@aucklanduni.ac.nz>
Date:
2020-10-29 09:32:37+13:00
Desc:
All the Cellml files, Sedml files and python scripts for figures are added
Permanent Source URI:
https://models.cellml.org/workspace/607/rawfile/f725b6864f22a00138a2c2455308142c8baba373/Figure04_plot.py

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
from scipy import interpolate
import math
import sys
# import plot_func

# reload (plot_func)
import os


data1 = pd.read_csv('SHbO2(pH).csv')
data2 = pd.read_csv('SHbO2(PCO2).csv')
data3 = pd.read_csv('SHbO2(DPG).csv')
data4 = pd.read_csv('SHbO2(Temp).csv')

Y1 = data1[data1.keys()[0]]
Y2 = data1[data1.keys()[1]]
Y3 = data1[data1.keys()[2]]
Y4 = data1[data1.keys()[3]]
Y5 = data1[data1.keys()[4]]

Y6 = data2[data2.keys()[0]]
Y7 = data2[data2.keys()[1]]
Y8 = data2[data2.keys()[2]]
Y9 = data2[data2.keys()[3]]
Y10 = data2[data2.keys()[4]]

Y11 = data3[data3.keys()[0]]
Y12 = data3[data3.keys()[1]]
Y13 = data3[data3.keys()[2]]
Y14 = data3[data3.keys()[3]]
Y15 = data3[data3.keys()[4]]

Y16 = data4[data4.keys()[0]]
Y17 = data4[data4.keys()[1]]
Y18 = data4[data4.keys()[2]]
Y19 = data4[data4.keys()[3]]
Y20 = data4[data4.keys()[4]]
# print(Y1)

PO2 = list(range(1,102))
# print(PO2)


# Y_values = []
data = [data1, data2, data3, data4]
plt.figure(figsize=(14,10))
plt.subplot(2,2,1)

plt.plot(PO2, Y1, 'navy' ,linestyle='-',  label = 'pH=6.92',linewidth=3)
plt.plot(PO2, Y2, 'green' ,linestyle='-',  label = 'pH=7.08',linewidth=3)
plt.plot(PO2, Y3, 'red' ,linestyle='-',  label = 'pH=7.24',linewidth=3)
plt.plot(PO2, Y4, 'black' ,linestyle='-',  label = 'pH=7.40',linewidth=3)
plt.plot(PO2, Y5, 'purple' ,linestyle='-',  label = 'pH=7.56',linewidth=3)

plt.xlim(0, 100)
plt.ylim(0.00,1.00)
# plt.yticks(np.arange(0,0.8,0.15))
plt.ylabel ('S_HbO2',fontsize=12)
plt.xlabel ('P$_{O_2}$(mmHg)',fontsize=12)
plt.grid()
plt.subplots_adjust(bottom=0.5, right=0.8, top=1)
plt.tight_layout(pad=0.4, w_pad=0.5, h_pad=1.0)
plt.title('A')
plt.legend(loc='upper left')

#######

plt.subplot(2,2,2)

plt.plot(PO2, Y6, 'navy' ,linestyle='-',  label = 'p$_{CO_2}$=5',linewidth=3)
plt.plot(PO2, Y7, 'green' ,linestyle='-',  label = 'p$_{CO_2}$=20',linewidth=3)
plt.plot(PO2, Y8, 'red' ,linestyle='-',  label = 'p$_{CO_2}$=40',linewidth=3)
plt.plot(PO2, Y9, 'black' ,linestyle='-',  label = 'p$_{CO_2}$=65',linewidth=3)
plt.plot(PO2, Y10, 'purple' ,linestyle='-',  label = 'p$_{CO_2}$=100',linewidth=3)

plt.xlim(0, 100)
plt.ylim(0.00,1.00)
# plt.yticks(np.arange(0,0.8,0.15))
plt.ylabel ('S_HbO2',fontsize=12)
plt.xlabel ('P$_{O_2}$(mmHg)',fontsize=12)
plt.grid()
plt.subplots_adjust(bottom=0.5, right=0.8, top=1)
plt.tight_layout(pad=0.4, w_pad=0.5, h_pad=1.0)
plt.title('B')
plt.legend(loc='upper left')

#######
plt.subplot(2,2,3)

plt.plot(PO2, Y11, 'navy' ,linestyle='-',  label = 'DPG$_{rbc}$=0.003',linewidth=3)
plt.plot(PO2, Y12, 'green' ,linestyle='-',  label = 'DPG$_{rbc}$=0.0045',linewidth=3)
plt.plot(PO2, Y13, 'red' ,linestyle='-',  label = 'DPG$_{rbc}$=0.006',linewidth=3)
plt.plot(PO2, Y14, 'black' ,linestyle='-',  label = 'DPG$_{rbc}$=0.0075',linewidth=3)
plt.plot(PO2, Y15, 'purple' ,linestyle='-',  label = 'DPG$_{rbc}$=0.009',linewidth=3)

plt.xlim(0, 100)
plt.ylim(0.00,1.00)
# plt.yticks(np.arange(0,0.8,0.15))
plt.ylabel ('S_HbO2',fontsize=12)
plt.xlabel ('P$_{O_2}$(mmHg)',fontsize=12)
plt.grid()
plt.subplots_adjust(bottom=0.5, right=0.8, top=1)
plt.tight_layout(pad=0.4, w_pad=0.5, h_pad=1.0)
plt.title('C')
plt.legend(loc='upper left')
#######
plt.subplot(2,2,4)

plt.plot(PO2, Y16, 'navy' ,linestyle='-',  label = 'T=27',linewidth=3)
plt.plot(PO2, Y17, 'green' ,linestyle='-',  label = 'T=32',linewidth=3)
plt.plot(PO2, Y18, 'red' ,linestyle='-',  label = 'T=37',linewidth=3)
plt.plot(PO2, Y19, 'black' ,linestyle='-',  label = 'T=42',linewidth=3)
plt.plot(PO2, Y20, 'purple' ,linestyle='-',  label = 'T=47',linewidth=3)

plt.xlim(0, 100)
plt.ylim(0.00,1.00)
# plt.yticks(np.arange(0,0.8,0.15))
plt.ylabel ('S_HbO2',fontsize=12)
plt.xlabel ('P$_{O_2}$(mmHg)',fontsize=12)
plt.grid()
plt.subplots_adjust(bottom=0.5, right=0.8, top=1)
plt.tight_layout(pad=0.4, w_pad=0.5, h_pad=1.0)
plt.title('D')
plt.legend(loc='upper left')
#######

plt.savefig('Figure04.png')
plt.show()