150 lines
		
	
	
		
			6.5 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			150 lines
		
	
	
		
			6.5 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
%%% R code to generate the input data files from corresponding simulation logs
 | 
						|
% R> setwd("~/Work/tensorPredictors")
 | 
						|
% R>
 | 
						|
% R> for (sim.name in c("1a", "1b", "1c", "1d", "1e")) {
 | 
						|
% R>     pattern <- paste0("sim\\_", sim.name, "\\_normal\\-[0-9T]*\\.csv")
 | 
						|
% R>     log.file <- sort(
 | 
						|
% R>         list.files(path = "sim/", pattern = pattern, full.names = TRUE),
 | 
						|
% R>         decreasing = TRUE
 | 
						|
% R>     )[[1]]
 | 
						|
% R>
 | 
						|
% R>     sim <- read.csv(log.file)
 | 
						|
% R>
 | 
						|
% R>     aggr <- aggregate(sim[, names(sim) != "sample.size"], list(sample.size = sim$sample.size), mean)
 | 
						|
% R>
 | 
						|
% R>     write.table(aggr, file = paste0("LaTeX/plots/aggr-", sim.name, "-normal.csv"), row.names = FALSE, quote = FALSE)
 | 
						|
% R> }
 | 
						|
\documentclass[border=0cm]{standalone}
 | 
						|
 | 
						|
\usepackage{tikz}
 | 
						|
\usepackage{pgfplots}
 | 
						|
\usepackage{bm}
 | 
						|
 | 
						|
\definecolor{gmlm}{RGB}{0,0,0}
 | 
						|
\definecolor{mgcca}{RGB}{86,180,233}
 | 
						|
\definecolor{tsir}{RGB}{0,158,115}
 | 
						|
\definecolor{hopca}{RGB}{230,159,0}
 | 
						|
\definecolor{pca}{RGB}{240,228,66}
 | 
						|
\definecolor{lpca}{RGB}{0,114,178}
 | 
						|
\definecolor{clpca}{RGB}{213,94,0}
 | 
						|
 | 
						|
\pgfplotsset{
 | 
						|
    compat=newest,
 | 
						|
    every axis/.style={
 | 
						|
        xtick={100,200,300,500,750},
 | 
						|
        ymin=-0.05, ymax=1.05,
 | 
						|
        grid=both,
 | 
						|
        grid style={gray, dotted}
 | 
						|
    },
 | 
						|
    every axis plot/.append style={
 | 
						|
        mark = *,
 | 
						|
        mark size = 1pt,
 | 
						|
        line width=0.8pt
 | 
						|
    }
 | 
						|
}
 | 
						|
\tikzset{
 | 
						|
    legend entry/.style={
 | 
						|
        mark = *,
 | 
						|
        mark size = 1pt,
 | 
						|
        mark indices = {2},
 | 
						|
        line width=0.8pt
 | 
						|
    }
 | 
						|
}
 | 
						|
 | 
						|
\begin{document}
 | 
						|
\begin{tikzpicture}[>=latex]
 | 
						|
 | 
						|
    \begin{axis}[
 | 
						|
        name=sim-1a,
 | 
						|
        xticklabel=\empty
 | 
						|
    ]
 | 
						|
        \addplot[color = gmlm, line width=1pt]  table[x = sample.size, y = dist.subspace.gmlm]  {aggr-1a-normal.csv};
 | 
						|
        \addplot[color = pca]   table[x = sample.size, y = dist.subspace.pca]   {aggr-1a-normal.csv};
 | 
						|
        \addplot[color = hopca] table[x = sample.size, y = dist.subspace.hopca] {aggr-1a-normal.csv};
 | 
						|
        \addplot[color = tsir]  table[x = sample.size, y = dist.subspace.tsir]  {aggr-1a-normal.csv};
 | 
						|
        \addplot[color = mgcca] table[x = sample.size, y = dist.subspace.mgcca] {aggr-1a-normal.csv};
 | 
						|
    \end{axis}
 | 
						|
    \node[anchor = base west, yshift = 0.3em] at (sim-1a.north west) {
 | 
						|
        a: linear dependence on $\mathcal{F}_y \equiv y$
 | 
						|
    };
 | 
						|
 | 
						|
    \begin{axis}[
 | 
						|
        name=sim-1b,
 | 
						|
        anchor=north west, at={(sim-1a.right of north east)}, xshift=0.1cm,
 | 
						|
        xticklabel=\empty,
 | 
						|
        ylabel near ticks, yticklabel pos=right
 | 
						|
    ]
 | 
						|
        \addplot[color = pca]   table[x = sample.size, y = dist.subspace.pca]   {aggr-1b-normal.csv};
 | 
						|
        \addplot[color = hopca] table[x = sample.size, y = dist.subspace.hopca] {aggr-1b-normal.csv};
 | 
						|
        \addplot[color = tsir]  table[x = sample.size, y = dist.subspace.tsir]  {aggr-1b-normal.csv};
 | 
						|
        \addplot[color = mgcca] table[x = sample.size, y = dist.subspace.mgcca] {aggr-1b-normal.csv};
 | 
						|
        \addplot[color = gmlm, line width=1pt] table[x = sample.size, y = dist.subspace.gmlm] {aggr-1b-normal.csv};
 | 
						|
    \end{axis}
 | 
						|
    \node[anchor = base west, yshift = 0.3em] at (sim-1b.north west) {
 | 
						|
        b: cubic dependence on $y$
 | 
						|
    };
 | 
						|
 | 
						|
    \begin{axis}[
 | 
						|
        name=sim-1c,
 | 
						|
        anchor=north west, at={(sim-1a.below south west)}, yshift=-.8em,
 | 
						|
        xticklabel=\empty
 | 
						|
    ]
 | 
						|
        \addplot[color = pca]   table[x = sample.size, y = dist.subspace.pca]   {aggr-1c-normal.csv};
 | 
						|
        \addplot[color = hopca] table[x = sample.size, y = dist.subspace.hopca] {aggr-1c-normal.csv};
 | 
						|
        \addplot[color = tsir]  table[x = sample.size, y = dist.subspace.tsir]  {aggr-1c-normal.csv};
 | 
						|
        \addplot[color = mgcca] table[x = sample.size, y = dist.subspace.mgcca] {aggr-1c-normal.csv};
 | 
						|
        \addplot[color = gmlm, line width=1pt] table[x = sample.size, y = dist.subspace.gmlm] {aggr-1c-normal.csv};
 | 
						|
    \end{axis}
 | 
						|
    \node[anchor = base west, yshift = 0.3em] at (sim-1c.north west) {
 | 
						|
        c: rank $1$ $\boldsymbol{\beta}$'s
 | 
						|
    };
 | 
						|
 | 
						|
    \begin{axis}[
 | 
						|
        name=sim-1d,
 | 
						|
        anchor=north west, at={(sim-1c.right of north east)}, xshift=0.1cm,
 | 
						|
        ylabel near ticks, yticklabel pos=right
 | 
						|
    ]
 | 
						|
        \addplot[color = pca]   table[x = sample.size, y = dist.subspace.pca]   {aggr-1d-normal.csv};
 | 
						|
        \addplot[color = hopca] table[x = sample.size, y = dist.subspace.hopca] {aggr-1d-normal.csv};
 | 
						|
        \addplot[color = tsir]  table[x = sample.size, y = dist.subspace.tsir]  {aggr-1d-normal.csv};
 | 
						|
        \addplot[color = mgcca] table[x = sample.size, y = dist.subspace.mgcca] {aggr-1d-normal.csv};
 | 
						|
        \addplot[color = gmlm, line width=1pt]  table[x = sample.size, y = dist.subspace.gmlm]  {aggr-1d-normal.csv};
 | 
						|
    \end{axis}
 | 
						|
    \node[anchor = base west, yshift = 0.3em] at (sim-1d.north west) {
 | 
						|
        d: tri-diagonal $\boldsymbol{\Omega}$'s
 | 
						|
    };
 | 
						|
 | 
						|
    \begin{axis}[
 | 
						|
        name=sim-1e,
 | 
						|
        anchor=north west, at={(sim-1c.below south west)}, yshift=-.8em
 | 
						|
    ]
 | 
						|
        \addplot[color = pca]   table[x = sample.size, y = dist.subspace.pca]   {aggr-1e-normal.csv};
 | 
						|
        \addplot[color = hopca] table[x = sample.size, y = dist.subspace.hopca] {aggr-1e-normal.csv};
 | 
						|
        \addplot[color = tsir]  table[x = sample.size, y = dist.subspace.tsir]  {aggr-1e-normal.csv};
 | 
						|
        \addplot[color = mgcca] table[x = sample.size, y = dist.subspace.mgcca] {aggr-1e-normal.csv};
 | 
						|
        \addplot[color = gmlm, line width=1pt]  table[x = sample.size, y = dist.subspace.gmlm]  {aggr-1e-normal.csv};
 | 
						|
    \end{axis}
 | 
						|
    \node[anchor = base west, yshift = 0.3em] at (sim-1e.north west) {
 | 
						|
        e: missspecified
 | 
						|
    };
 | 
						|
 | 
						|
 | 
						|
    \matrix[anchor = center] at (sim-1e.right of east -| sim-1d.south) {
 | 
						|
        \draw[color=gmlm,  legend entry, line width=1pt] plot coordinates {(0, 0) (.3, 0) (.6, 0)}; & \node[anchor=west] {GMLM};  \\
 | 
						|
        \draw[color=tsir,  legend entry] plot coordinates {(0, 0) (.3, 0) (.6, 0)}; & \node[anchor=west] {TSIR};  \\
 | 
						|
        \draw[color=mgcca, legend entry] plot coordinates {(0, 0) (.3, 0) (.6, 0)}; & \node[anchor=west] {MGCCA}; \\
 | 
						|
        \draw[color=hopca, legend entry] plot coordinates {(0, 0) (.3, 0) (.6, 0)}; & \node[anchor=west] {HOPCA}; \\
 | 
						|
        \draw[color=pca,   legend entry] plot coordinates {(0, 0) (.3, 0) (.6, 0)}; & \node[anchor=west] {PCA};   \\
 | 
						|
    };
 | 
						|
 | 
						|
 | 
						|
    \node[anchor = north] at (current bounding box.south) {Sample Size $n$};
 | 
						|
 | 
						|
    \node[anchor = south, rotate = 90] at (current bounding box.west) {Subspace Distance $d(\boldsymbol{B}, \hat{\boldsymbol{B}})$};
 | 
						|
    \node[anchor = south, rotate = 270] at (current bounding box.east) {\phantom{Subspace Distance $d(\boldsymbol{B}, \hat{\boldsymbol{B}})$}};
 | 
						|
 | 
						|
    \node[anchor = south, font=\large] at (current bounding box.north) {Tensor Normal Simulation};
 | 
						|
 | 
						|
\end{tikzpicture}
 | 
						|
\end{document}
 |