From b08cf51123fc9364f7fafdb7f7035b979a4f10bc Mon Sep 17 00:00:00 2001 From: Mohammad Akhlaghi Date: Thu, 18 Jun 2020 03:05:02 +0100 Subject: Better step-by-step implementation of the data-lineage figure Until now, the data-lineage figure's step-by-step feature (using the macros defined at the top) didn't correspond to the new format! It was still based on the purely-hypothetical format, while the boxes and their contents had changed. With this commit, they macros and corresponding parts that they create have been updated to represent the step-by-step data lineage of this paper. Also, in the "tools-per-year" plot, the green line was brought ontop of the histogram to be more clear (especially when transparency isn't implemented properly in the conversion). --- tex/src/figure-data-lineage.tex | 161 +++++++++++++++++--------------------- tex/src/figure-tools-per-year.tex | 30 +++---- 2 files changed, 87 insertions(+), 104 deletions(-) diff --git a/tex/src/figure-data-lineage.tex b/tex/src/figure-data-lineage.tex index f5aa77c..31f4380 100644 --- a/tex/src/figure-data-lineage.tex +++ b/tex/src/figure-data-lineage.tex @@ -4,27 +4,21 @@ \newcommand{\projecttex}{} % 4 \newcommand{\verifytex}{} % 5 \newcommand{\initializetex}{} % 6 -\newcommand{\downloadtex}{} % 7 -\newcommand{\inputtwo}{} % 8 -\newcommand{\inputsconf}{} % 9 -\newcommand{\analysisonetex}{} % 10 -\newcommand{\outoneb}{} % 11 -\newcommand{\outonebdep}{} % 12 -\newcommand{\inputone}{} % 13 -\newcommand{\inputonedep}{} % 14 -\newcommand{\analysistwotex}{} % 15 -\newcommand{\outtwob}{} % 16 -\newcommand{\outtwobdep}{} % 17 -\newcommand{\analysisthreetex}{} % 18 -\newcommand{\analysisthreeouts}{} % 19 -\newcommand{\outtwoa}{} % 20 -\newcommand{\outtwoadep}{} % 21 -\newcommand{\outthreeadep}{} % 22 +\newcommand{\demoplottex}{} % 7 +\newcommand{\toolsperyear}{} % 8 +\newcommand{\tablethree}{} % 9 +\newcommand{\menkexlsx}{} % 10 +\newcommand{\inputsconf}{} % 11 +\newcommand{\downloadtex}{} % 12 +\newcommand{\formattex}{} % 13 +\newcommand{\demoyearconf}{} % 14 +\newcommand{\expandingproject}{} % 15 +%% Start the TiKZ picture environment. \begin{tikzpicture}[ line width=1.5pt, black!50, @@ -63,8 +57,6 @@ label={[shift={(0,-5mm)}]\texttt{format.mk}}] {}; \node (analysis2mk) [node-makefile, at={(2.67cm,-1.3cm)}, label={[shift={(0,-5mm)}]\texttt{demo-plot.mk}}] {}; - \node [opacity=0.6] (analysis3mk) [node-makefile, at={(5.47cm,-1.3cm)}, - label={[shift={(0,-5mm)}, opacity=0.6]\texttt{next-step.mk}}] {}; %% verify.mk \node [at={(-5.3cm,-2.8cm)}, @@ -130,97 +122,88 @@ \node [anchor=west, at={(-7.05cm,0.40cm)}] {(for \texttt{*.mk} files).}; \fi - %% download.tex - \ifdefined\downloadtex - \node (downloadtex) [node-terminal, at={(-2.93cm,-0.8cm)}] {download.tex}; - \draw [rounded corners, -] (downloadtex) |- (initialize-south); + %% demo-plot.tex + \ifdefined\demoplottex + \node (dptex) [node-terminal, at={(2.67cm,-0.8cm)}] {demo-plot.tex}; + \draw [rounded corners, -] (dptex) |- (initialize-south); \fi - %% input-2.dat - \ifdefined\inputtwo - \node (input2) [node-terminal, at={(-2.93cm,1.9cm)}] {menke20.xlsx}; + %% tools-per-year.txt + \ifdefined\toolsperyear + \node (tpyear) [node-terminal, at={(2.67cm,0.3cm)}] {tools-per-\\year.txt}; + \draw [->] (tpyear) -- (dptex); \fi - %% INPUTS.conf - \ifdefined\inputsconf - \node (INPUTS) [node-nonterminal, at={(-2.93cm,4.6cm)}] {INPUTS.conf}; - \node (input2-west) [node-point, at={(-4.33cm,1.9cm)}] {}; - \node (downloadtex-west) [node-point, at={(-4.33cm,-0.8cm)}] {}; - \draw [->,rounded corners] (INPUTS.west) -| (input2-west) |- (input2); - \draw [->,rounded corners] (INPUTS.west) -| (downloadtex-west) - |- (downloadtex); + %% table-3.txt + \ifdefined\tablethree + \node (tabthree) [node-terminal, at={(-0.13cm,1.1cm)}] {table-3.txt}; + \draw [rounded corners, ->] (tabthree) |- (tpyear); \fi - %% analysis1.tex - \ifdefined\analysisonetex - \node (a1tex) [node-terminal, at={(-0.13cm,-0.8cm)}] {format.tex}; - \draw [rounded corners, -] (a1tex) |- (initialize-south); + %% menkexlsx + \ifdefined\menkexlsx + \node (xlsx) [node-terminal, at={(-2.93cm,1.9cm)}] {menke20.xlsx}; + \draw [->, rounded corners] (xlsx) |- (tabthree); \fi - %% out1b.dat - \ifdefined\outoneb - \node (out1b) [node-terminal, at={(-0.13cm,1.1cm)}] {table-3.txt}; - \draw [->] (out1b) -- (a1tex); + %% INPUTS.conf + \ifdefined\inputsconf + \node (INPUTS) [node-nonterminal, at={(-2.93cm,4.6cm)}] {INPUTS.conf}; + \node (xlsx-west) [node-point, at={(-4.33cm,1.9cm)}] {}; + \draw [->,rounded corners] (INPUTS.west) -| (xlsx-west) |- (xlsx); \fi - %% outonebdep - \ifdefined\outonebdep - \node (out1b-west) [node-point, at={(-1.53cm,1.1cm)}] {}; - \draw [->, rounded corners] (input2) |- (out1b); + %% download.tex + \ifdefined\downloadtex + \node (downloadtex) [node-terminal, at={(-2.93cm,-0.8cm)}] {download.tex}; + \node (downloadtex-west) [node-point, at={(-4.33cm,-0.8cm)}] {}; + \draw [->,rounded corners] (INPUTS.west) -| (downloadtex-west) + |- (downloadtex); + \draw [rounded corners, -] (downloadtex) |- (initialize-south); \fi - %% analysis2.tex - \ifdefined\analysistwotex - \node (a2tex) [node-terminal, at={(2.67cm,-0.8cm)}] {demo-plot.tex}; - \draw [rounded corners, -] (a2tex) |- (initialize-south); + %% format.tex + \ifdefined\formattex + \node (fmttex) [node-terminal, at={(-0.13cm,-0.8cm)}] {format.tex}; + \draw [->] (tabthree) -- (fmttex); + \draw [rounded corners, -] (fmttex) |- (initialize-south); \fi - %% out-2b.dat - \ifdefined\outtwob - \node (menkedemoyear) [node-nonterminal, at={(2.67cm,4.6cm)}] {demo-year.conf}; - \node (a2tex-west) [node-point, at={(1.27cm,-0.8cm)}] {}; - \node (out2b) [node-terminal, at={(2.67cm,0.3cm)}] {tools-per-\\year.txt}; - \draw [->] (out2b) -- (a2tex); - \draw [->,rounded corners] (menkedemoyear.west) -| (a2tex-west) |- (a2tex); + %% demo-year.conf + \ifdefined\demoyearconf + \node (dyearconf) [node-nonterminal, at={(2.67cm,4.6cm)}] {demo-year.conf}; + \node (dptex-west) [node-point, at={(1.27cm,-0.8cm)}] {}; + \draw [->,rounded corners] (dyearconf.west) -| (dptex-west) |- (dptex); \fi - %% out-2b dependencies - \ifdefined\outtwobdep - \draw [->,rounded corners,] (out1b.south) |- (out2b); - \fi + %% Expanding project + \ifdefined\expandingproject - %% analysis3.tex - \ifdefined\analysisthreetex - \node [opacity=0.6] (a3tex) [node-terminal, at={(5.47cm,-0.8cm)}] {next-step.tex}; - \draw [opacity=0.6, rounded corners, -, dashed] (a3tex) |- (initialize-south); - \fi + %% The Makefile. + \node [opacity=0.7, dashed] (analysis3mk) [node-makefile, at={(5.47cm,-1.3cm)}, + label={[shift={(0,-5mm)}, opacity=0.7]\texttt{next-step.mk}}] {}; - %% Outputs of analysis3 - \ifdefined\analysisthreeouts - \node [opacity=0.6] (out3a) [node-terminal, at={(5.47cm,2.7cm)}] {out-3a.dat}; - \node [opacity=0.6] (out3b) [node-terminal, at={(5.47cm,1.1cm)}] {out-3b.dat}; - \node (a3tex-east) [node-point, at={(6.87cm,-0.8cm)}] {}; - \draw [opacity=0.6, ->,rounded corners, dashed] (out3a.east) -| (a3tex-east) |- (a3tex); - \draw [opacity=0.6, ->, dashed] (out3b) -- (a3tex); - \fi + %% next-step.tex + \node [opacity=0.7, dashed] (a3tex) [node-terminal, at={(5.47cm,-0.8cm)}] {next-step.tex}; + \draw [opacity=0.7, rounded corners, -, dashed] (a3tex) |- (initialize-south); - %% out-2a.dat - \ifdefined\outtwoa - \node [opacity=0.6] (out2a) [node-terminal, at={(2.67cm,1.9cm)}] {demo-out.dat}; - \draw [opacity=0.6, ->, rounded corners, dashed] (out2a.south) |- (out3b); - \fi + % out-3a.dat and out-3b.dat + \node [opacity=0.7, dashed] (out3a) [node-terminal, at={(5.47cm,2.7cm)}] {out-a.dat}; + \node [opacity=0.7, dashed] (out3b) [node-terminal, at={(5.47cm,1.1cm)}] {out-b.dat}; + \node (a3tex-east) [node-point, at={(6.87cm,-0.8cm)}] {}; + \draw [opacity=0.7, ->,rounded corners, dashed] (out3a.east) -| (a3tex-east) |- (a3tex); + \draw [opacity=0.7, ->, dashed] (out3b) -- (a3tex); - %% Dependencies of out-2a - \ifdefined\outtwoadep - \node (out2a-west) [node-point, at={(1.27cm,1.9cm)}] {}; - \draw [opacity=0.6, ->, dashed] (input2) -- (out2a); - \fi + %% demo-out.dat + \node [opacity=0.7, dashed] (dout) [node-terminal, at={(2.67cm,1.9cm)}] {demo-out.dat}; + \draw [opacity=0.7, ->, rounded corners, dashed] (dout.south) |- (out3b); - %% Dependencies of out-3a - \ifdefined\outthreeadep - \node [opacity=0.6] (out3a-west) [node-point, at={(4.07cm,2.7cm)}] {}; - \draw [opacity=0.6, ->,rounded corners, dashed] (input2) |- (out3a); - \node [opacity=0.6] (a3conf1) [node-nonterminal, at={(5.47cm,4.6cm)}] {param.conf}; - \draw [opacity=0.6, rounded corners, dashed] (a3conf1.west) -| (out3a-west) |- (out3a); + %% links + \node (dout-west) [node-point, at={(1.27cm,1.9cm)}] {}; + \draw [opacity=0.7, ->, dashed] (xlsx) -- (dout); + \node [opacity=0.7] (out3a-west) [node-point, at={(4.07cm,2.7cm)}] {}; + \draw [opacity=0.7, ->,rounded corners, dashed] (xlsx) |- (out3a); + \node [opacity=0.7, dashed] (a3conf1) [node-nonterminal, at={(5.47cm,4.6cm)}] {param.conf}; + \draw [opacity=0.7, rounded corners, dashed] (a3conf1.west) -| (out3a-west) |- (out3a); \fi \end{tikzpicture} diff --git a/tex/src/figure-tools-per-year.tex b/tex/src/figure-tools-per-year.tex index e235424..f6dc239 100644 --- a/tex/src/figure-tools-per-year.tex +++ b/tex/src/figure-tools-per-year.tex @@ -1,4 +1,19 @@ \begin{tikzpicture}[scale=0.9] + %% Add the right-side Y axis. + \begin{axis}[ + ymode=log, + width=\linewidth, + height=0.3\linewidth, + axis x line=none, + axis y line*=right, + enlarge x limits = false, + ylabel=Num. papers (log-scale), + max space between ticks=20, + ] + \addplot+ [ybar, mark=none, fill=red!50!white, red, opacity=0.25] + table [x index=0, y index=2] {tex/build/to-publish/tools-per-year.txt}; + \end{axis} + \begin{axis}[ ymin=0, ymax=100, @@ -16,19 +31,4 @@ \addplot+ [mark=none, very thick, green!60!black] table {tex/build/to-publish/tools-per-year.txt}; \end{axis} - - %% Add the right-side Y axis. - \begin{axis}[ - ymode=log, - width=\linewidth, - height=0.3\linewidth, - axis x line=none, - axis y line*=right, - enlarge x limits = false, - ylabel=Num. papers (log-scale), - max space between ticks=20, - ] - \addplot+ [ybar, mark=none, fill=red!50!white, red, opacity=0.25] - table [x index=0, y index=2] {tex/build/to-publish/tools-per-year.txt}; - \end{axis} \end{tikzpicture} -- cgit v1.2.1