aboutsummaryrefslogtreecommitdiff
path: root/processing
diff options
context:
space:
mode:
Diffstat (limited to 'processing')
-rw-r--r--processing/MX2_TSF.wt5bin0 -> 4561160 bytes
-rw-r--r--processing/TSF_MoS2.wt5bin0 -> 874248 bytes
-rw-r--r--processing/chapter.tex7
-rw-r--r--processing/join.py49
-rw-r--r--processing/join_example.pngbin0 -> 116930 bytes
-rw-r--r--processing/join_example.py64
6 files changed, 119 insertions, 1 deletions
diff --git a/processing/MX2_TSF.wt5 b/processing/MX2_TSF.wt5
new file mode 100644
index 0000000..f13c74b
--- /dev/null
+++ b/processing/MX2_TSF.wt5
Binary files differ
diff --git a/processing/TSF_MoS2.wt5 b/processing/TSF_MoS2.wt5
new file mode 100644
index 0000000..f905737
--- /dev/null
+++ b/processing/TSF_MoS2.wt5
Binary files differ
diff --git a/processing/chapter.tex b/processing/chapter.tex
index a32f170..db8da3b 100644
--- a/processing/chapter.tex
+++ b/processing/chapter.tex
@@ -795,7 +795,12 @@ It is also not a method of the \python{Data} class, it is a bare function. %
Join accepts multiple data objects and attempts to join them together. %
To do this, the variable and channel names must agree. %
-% TODO: join example (from Darien on slack)
+\begin{figure}
+ \includegraphics[width=\textwidth]{"processing/join_example"}
+ \caption[CAPTION TODO]{
+ CAPTION TODO}
+ \label{pro:fig:join_example}
+\end{figure}
\section{Fitting} % ==============================================================================
diff --git a/processing/join.py b/processing/join.py
new file mode 100644
index 0000000..f3a4203
--- /dev/null
+++ b/processing/join.py
@@ -0,0 +1,49 @@
+"""Join figure."""
+
+
+# --- import --------------------------------------------------------------------------------------
+
+
+import os
+
+import matplotlib.pyplot as plt
+
+import WrightTools as wt
+
+
+# --- define --------------------------------------------------------------------------------------
+
+
+here = os.path.abspath(os.path.dirname(__file__))
+
+
+# --- workspace -----------------------------------------------------------------------------------
+
+
+wt.artists.apply_rcparams('publication')
+
+fig, gs = wt.artists.create_figure(width='double', cols=[1, 0, 1, 1, 1, 'cbar'], nrows=4)
+
+root = wt.open(os.path.join(here, 'MX2_TSF.wt5'))
+
+def plot(ax, d):
+ d.transform('w1', 'w2')
+ d.sig.clip(0, 4)
+ ax.pcolor(d)
+
+# II
+ax = plt.subplot(gs[0, 0])
+plot(ax, root.processed_tsf.divided_tsf.II)
+
+# IS
+ax = plt.subplot(gs[1, 0])
+plot(ax, root.processed_tsf.divided_tsf.IS)
+
+# SS
+ax = plt.subplot(gs[2, 0])
+plot(ax, root.processed_tsf.divided_tsf.SS)
+
+
+# savefig
+p = os.path.join(here, 'join.png')
+plt.show()
diff --git a/processing/join_example.png b/processing/join_example.png
new file mode 100644
index 0000000..a2c83f5
--- /dev/null
+++ b/processing/join_example.png
Binary files differ
diff --git a/processing/join_example.py b/processing/join_example.py
new file mode 100644
index 0000000..ce1e18e
--- /dev/null
+++ b/processing/join_example.py
@@ -0,0 +1,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)