Matplotlib example
Jump to navigation
Jump to search
Contents
Example
File: mat_example.py
# Get the OS path separator
from os import sep
# Find relax installation dir
from status import Status; status = Status()
# Import some tools to loop over the spins.
from pipe_control.mol_res_spin import return_spin, spin_loop
# Extra tools fo
import specific_analyses.relax_disp.disp_data as dtools
# Plotting facility.
import matplotlib.pyplot as plt
# Path to data
data_path = status.install_path + sep+'test_suite'+sep+'shared_data'+sep+'dispersion'+sep+'Hansen'+sep+'relax_results'
# Load the state
state.load(data_path+sep+'final_state.bz2', force=True)
# Loop over the spins
for spin, spin_id in spin_loop(return_id=True):
print spin, spin_id
# Get the available data for a spin.
print(dir(spin))
resi_data = []
kex_data = []
for resiob in cdp.mol[0].res:
print resiob.name, resiob.num, resiob.spin[0].kex, resiob.spin[0].model
resi_data.append(resiob.num), kex_data.append(resiob.spin[0].kex)
print(dir(resiob))
plt.plot(resi_data, kex_data, 'ro')
plt.show()
Example 2
File: mat_example.py
# Get the OS path separator
from os import sep
# Plotting facility.
import matplotlib.pyplot as plt
# Import some tools to loop over the spins.
from pipe_control.mol_res_spin import return_spin, spin_loop
# Load the state
#state.load('final_state.bz2', force=True)
outfile = open("test.txt", "w")
# Ini
spectrometer_frq = cdp.spectrometer_frq_list[0]
cpmg_frqs_list = cdp.cpmg_frqs_list
sel_point = cpmg_frqs_list[1]
resi_data = []
Rex_data = []
Model_data = []
for resiob in cdp.mol[0].res:
cur_model = resiob.spin[0].model
if cur_model == "TSMFK01" :
r2dic=resiob.spin[0].r2a
for key, value in r2dic.iteritems():
r2a = value
elif cur_model == "CR72 full":
r2dic=resiob.spin[0].r2a
for key, value in r2dic.iteritems():
r2a = value
else:
r2dic=resiob.spin[0].r2
for key, value in r2dic.iteritems():
r2a = value
r2effdic = resiob.spin[0].r2eff
for key, value in r2effdic.iteritems():
curcpmg = float(key.split("_")[-1])
if curcpmg == sel_point:
r2eff = value
Rex = r2eff - r2a
print(resiob.name, resiob.num, cur_model, r2a, r2eff, Rex)
outfile.write("%s %s %s %s %s %s\n"%(resiob.name, resiob.num, cur_model.replace (" ", "_"), r2a, r2eff, Rex))
resi_data.append(resiob.num)
Rex_data.append(Rex)
Model_data.append(cur_model)
outfile.close()
plt.plot(resi_data, Rex_data, 'ro')
for i in range(len(resi_data)):
resi = resi_data[i]
Rex = Rex_data[i]
Model = Model_data[i]
if Model == "No Rex":
textcolor = 'k'
elif Model == "TSMFK01":
textcolor = 'r'
else:
textcolor = 'b'
plt.annotate('%s'%(resi), xy=(resi,Rex), xytext=(resi, Rex), size=8, color=textcolor)
plt.plot([min(resi_data), max(resi_data)], [0, 0], 'k-', lw=2)
plt.show()
To run
relax mat_example.py
Or
$ relax
relax> script('mat_example.py')