How to align two plots horizontally

I want to align these two plots horizontally:

 \begin{tikzpicture}
\begin{axis}[
xmin=1995,
xmax=2010,
ymode=log,
xtick={1975,1980,...,2015},
x tick label style={/pgf/number format/1000 sep=},
xlabel={Year},
ylabel={Cost of gene synthesis $(\$/base$)}, ] \addplot coordinates {(1998,30) (2001,15) (2002,10) (2003,5) (2006,0) (2007,0.7)}; \end{axis} \end{tikzpicture}  and \begin{tikzpicture} \begin{axis}[ xmin=1975, xmax=2010, ymode=log, xtick={1975,1980,...,2015}, x tick label style={/pgf/number format/1000 sep=}, xlabel={Year}, ylabel={Length in base pairs}, ] \addplot coordinates {(1978,207) (1990,2100) (1995,2700) (2003,7500) (2005,14600) (2006,32000) (2009,583000)}; \end{axis} \end{tikzpicture}  I tried to use \subfigure but without success. - 2 Answers Here's how I would do it, using the subcaption package as you desired I took the liberty of moving your ylabel text into the caption. I set the width=\textwidth too. You might like to explore scale only axis it's quite useful- I've left it in the preamble as a comment for you to play with. % arara: pdflatex % !arara: indent: {overwrite: true} \documentclass{article} \usepackage{pgfplots} \usepackage{subcaption} %\pgfplotsset{every axis/.append style={ % scale only axis, % otherwise width won't be as intended: http://tex.stackexchange.com/questions/36297/pgfplots-how-can-i-scale-to-text-width % }} \begin{document} \begin{figure}[!ht] \begin{subfigure}[t]{.5\textwidth} \begin{tikzpicture} \begin{axis}[ xmin=1995, xmax=2010, ymode=log, xtick={1975,1980,...,2015}, x tick label style={/pgf/number format/1000 sep=}, xlabel={Year}, width=\textwidth, ] \addplot coordinates {(1998,30) (2001,15) (2002,10) (2003,5) (2006,0) (2007,0.7)}; \end{axis} \end{tikzpicture} \caption{Cost of gene synthesis ($\$/base$)},
\end{subfigure}%
\begin{subfigure}[t]{.5\textwidth}
\begin{tikzpicture}
\begin{axis}[
xmin=1975,
xmax=2010,
ymode=log,
xtick={1975,1985,...,2015},
x tick label style={/pgf/number format/1000 sep=},
xlabel={Year},
width=\textwidth,
]
\addplot coordinates {(1978,207) (1990,2100) (1995,2700) (2003,7500) (2005,14600) (2006,32000) (2009,583000)};
\end{axis}
\end{tikzpicture}
\caption{Length in base pairs}
\end{subfigure}%
\end{figure}
\end{document}

-
Thank you, I am experiencing now a new problem, I have to put the entire figure in two column article, and I want to center the figure as if the article was a single column because it compiles in rows in my 2-column article –  microarm15 Apr 6 '13 at 10:33
@microarm15 that will probably be a new question- you might like to explore figure* :) –  cmhughes Apr 6 '13 at 19:56
thanks, it worked :) –  microarm15 Apr 6 '13 at 20:45

I usually just place them together in a center environment:

\begin{center}
\begin{tikzpicture} \begin{axis} ... \end{axis} \end{tikzpicture}
\hfil
\begin{tikzpicture} \begin{axis} ... \end{axis} \end{tikzpicture}
\end{center}


There is also \usepgfplots{groupplots} and its associated matrix-like arrangement, documented in Section 5.5 of the pgfplots manual.

-
Thank you, but unfortunately I faced the same problem, I have to remove the ylabel from the first graph and still the final plot in two stages –  microarm15 Apr 6 '13 at 0:42
You're going to have to be more specific about both what you want and what your problem is, then. –  Ryan Reich Apr 6 '13 at 3:50