aboutsummaryrefslogtreecommitdiff
path: root/processing/join_example.py
blob: ce1e18ec5efc15b7d33f987067a0e49422256735 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
"""Join example."""


# --- import --------------------------------------------------------------------------------------


import os

import WrightTools as wt

import numpy as np

import matplotlib.pyplot as plt


# --- define and import ---------------------------------------------------------------------------


here = os.path.abspath(os.path.dirname(__file__))

p = os.path.join(here, 'MX2_TSF.wt5')
root = wt.open(p)
divided = root.processed_tsf.divided_tsf

def individual_plotter(gs, d, j):
    ax = plt.subplot(gs[0,j])
    ax.pcolor(d)
    ax.grid()
    wt.artists.set_ax_labels(ax=ax, xlabel=d.w1.label, ylabel=d.w2.label)

    # join
ds = [divided[0], divided[1], divided[2]]
joined = wt.data.join(ds, parent=divided, )
# pretty up indivudal
for d in ds:
    d.transform('w1', 'w2')
    d.sig.clip(0,4)
# pretty up joined
joined.sig.clip(0,4)
joined.transform('w1', 'w2')


# --- workspace -----------------------------------------------------------------------------------


# instantiate figure
fig, gs = wt.artists.create_figure(width='double', nrows=3, cols=[1,'cbar',1,'cbar',1,'cbar'], hspace=.75, wspace=.35)
# plot indiviudal data
d = divided[0]
individual_plotter(gs, d, 0)
d = divided[1]
individual_plotter(gs, d, 2)
d = divided[2]
individual_plotter(gs, d, 4)
# plot joined data
ax = plt.subplot(gs[1:,:-1])
ax.pcolor(joined)
ax.grid()
wt.artists.set_ax_labels(ax=ax, xlabel=d.w1.label, ylabel=d.w2.label)
# colorbar
cax = plt.subplot(gs[:,-1]) 
ticks = np.linspace(joined.sig.min(), joined.sig.max(), 11)
label = 'TSF amplitude'
wt.artists.plot_colorbar(cax=cax, ticks=ticks, label=label)