"""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)