Location: Computational analysis of the human sinus node action potential @ 22ec8c617582 / Figure02.py

Author:
nima <nafs080@aucklanduni.ac.nz>
Date:
2021-06-02 08:46:41+12:00
Desc:
Better data visualization
Permanent Source URI:
https://staging.physiomeproject.org/workspace/648/rawfile/22ec8c6175829663bd9d84d62b3cf83d9b0e70f6/Figure02.py

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import sys
#import plot_func
#reload (plot_func)
import os


data = pd.read_csv('Figure02(new).csv')

X = data[data.keys()[0]]*1000
Y1 = data[data.keys()[18]]
Y2 = data[data.keys()[17]]*1000/57
Y3 = data[data.keys()[6]]
Y4 = data[data.keys()[7]]*1000/57
Y5 = data[data.keys()[10]]*1000/57
Y6 = data[data.keys()[5]]
Y7 = data[data.keys()[9]]*1000/57
Y8 = data[data.keys()[11]]*1000/57
Y9 = data[data.keys()[13]]*1000/57
Y10 = data[data.keys()[8]]*1000/57
Y11 = data[data.keys()[3]]*1000
Y12 = data[data.keys()[14]]*1000/57
Y13 = data[data.keys()[15]]*1000/57
Y14 = data[data.keys()[4]]*1e6
Y15 = data[data.keys()[12]]*1000/57
Y16 = data[data.keys()[16]]*1000/57
Y17 = data[data.keys()[1]]
Y18 = data[data.keys()[2]]

plt.figure(figsize=(14,16))

plt.subplot(6,2,1)
plt.plot(X, Y1, 'navy' ,linestyle='-',  label = '',linewidth=3)


plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
plt.ylim(-70, 30)
plt.yticks(np.arange(-60, 30, 20))
plt.ylabel ('V$_m$ (mV)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
plt.title('A' ,fontsize=20)
#plt.legend(loc = 'best',fontsize=10)

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.subplot(6,2,2)
plt.plot(X, Y1, 'navy' ,linestyle='-',  label = '',linewidth=3)

plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
plt.ylim(-70, 30)
plt.yticks(np.arange(-60, 30, 20))
plt.ylabel ('V$_m$ (mV)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
# plt.title('A' ,fontsize=20)
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.subplot(6,2,3)
plt.plot(X, Y2, 'navy' ,linestyle='-',  label = '',linewidth=3)

plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
plt.ylim(-8,3)
plt.yticks(np.arange(-8, 4,2))
plt.ylabel ('I$_{tot}$ (pA/pF)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
plt.title('B' ,fontsize=20)
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.subplot(6,2,4)
plt.plot(X, Y3, 'navy' ,linestyle='-',  label = '',linewidth=3)

plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
# plt.ylim(0,310)
plt.yticks(np.arange(0, 310, 100))
plt.ylabel ('J$_{rel}$ (mM/s)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
plt.title('G' ,fontsize=20)
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.subplot(6,2,5)
plt.plot(X, Y4, 'navy' ,linestyle='-',  label = 'I$_{CaL}$',linewidth=3)
plt.plot(X, Y5, 'red' ,linestyle='-',  label = 'I$_{Kr}$',linewidth=3)

plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
plt.ylim(-8,3)
plt.yticks(np.arange(-8, 3, 2))
plt.ylabel ('(pA/pF)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
plt.title('C' ,fontsize=20)
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.legend()

plt.subplot(6,2,6)
plt.plot(X, Y6, 'navy' ,linestyle='-',  label = 'I$_{CaL}$',linewidth=3)

plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
plt.yticks(np.arange(0, 1, 0.2))
plt.ylabel ('J$_{up}$ (mM/s)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
plt.title('H',fontsize=20)
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.subplot(6,2,7)
plt.plot(X, Y7, 'navy' ,linestyle='-',  label = 'I$_{f}$',linewidth=3)
plt.plot(X, Y8, 'red' ,linestyle='-',  label = 'I$_{Ks}$',linewidth=3)
plt.plot(X, Y9, 'green' ,linestyle='-',  label = 'I$_{Na}$',linewidth=3)
plt.plot(X, Y10, 'purple' ,linestyle='-',  label = 'I$_{CaT}$',linewidth=3)


plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
plt.ylim(-0.1,0.051)
plt.yticks(np.arange(-0.1, 0.051, 0.05))
plt.ylabel ('(pA/pF)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
plt.title('D',fontsize=20)
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.legend()

plt.subplot(6,2,8)
plt.plot(X, Y11, 'navy' ,linestyle='-',  label = 'I$_{CaL}$',linewidth=3)

plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
# plt.ylim(0,3.1)
plt.yticks(np.arange(0, 3.1, 1))
plt.ylabel ('Ca$_{sub}$ (\u03BCM)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
plt.title('I',fontsize=20)
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.subplot(6,2,9)
plt.plot(X, Y12, 'navy' ,linestyle='-',  label = 'I$_{NaCa}$',linewidth=3)
plt.plot(X, Y13, 'red' ,linestyle='-',  label = 'I$_{NaK}$',linewidth=3)



plt.xlim(0, 1600, 1000)
plt.xticks(np.arange(0,1700, 500))
plt.yticks(np.arange(-2, 1, 0.5))
plt.ylabel ('(pA/pF)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
plt.title('E',fontsize=20)
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.legend()

plt.subplot(6,2,10)
plt.plot(X, Y14, 'navy' ,linestyle='-',  label = 'I$_{CaL}$',linewidth=3)

plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
plt.yticks(np.arange(50, 250, 50))
plt.ylabel ('Ca$_i$ (nM)',fontsize=12)
# plt.xlabel ('Time(ms)',fontsize=12)
plt.title('J',fontsize=20)
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.subplot(6,2,11)
plt.plot(X, Y15, 'navy' ,linestyle='-',  label = '$I_{Kur}$',linewidth=3)
plt.plot(X, Y16, 'red' ,linestyle='-',  label = '$I_{to}$',linewidth=3)



plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
plt.yticks(np.arange(0, 0.5, 0.1))
plt.ylabel ('(pA/pF)',fontsize=12)
plt.xlabel ('Time( ms)',fontsize=12)
plt.title('F',fontsize=20)
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.legend()

plt.subplot(6,2,12)
plt.plot(X, Y17, 'navy' ,linestyle='-',  label = '$Ca_{jSR}$',linewidth=3)
plt.plot(X, Y18, 'red' ,linestyle='-',  label = '$Ca_{nSR}$',linewidth=3)



plt.xlim(0, 1600)
plt.xticks(np.arange(0,1600, 500))
plt.yticks(np.arange(0.1, 0.6, 0.1))
plt.ylabel ('mM',fontsize=12)
plt.xlabel ('Time (ms)',fontsize=12)
plt.title('K',fontsize=20)
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.legend()

plt.savefig('C:/Nima/ABI/Physiome Journal/sinus/Python_codes/figure02.png')
plt.show()