90 lines
2.3 KiB
TeX
90 lines
2.3 KiB
TeX
|
\documentclass[11pt]{article}
|
||
|
\usepackage{graphicx}
|
||
|
\usepackage[a4paper,margin=2cm,noheadfoot]{geometry}
|
||
|
|
||
|
\usepackage{xspace,color}
|
||
|
\usepackage{url}
|
||
|
\usepackage{listings}
|
||
|
|
||
|
|
||
|
\lstset{commentstyle=\color{red},keywordstyle=\color{black},
|
||
|
showstringspaces=false}
|
||
|
\lstnewenvironment{rc}[1][]{\lstset{language=R}}{}
|
||
|
\newcommand{\ri}[1]{\lstinline{#1}} %% Short for 'R inline'
|
||
|
|
||
|
\lstset{language=R} % Set R to default language
|
||
|
\begin{document}
|
||
|
|
||
|
|
||
|
|
||
|
\title{Including R code and output in your latex document}
|
||
|
\author{Stephen Eglen}
|
||
|
\date{\today}
|
||
|
|
||
|
\maketitle
|
||
|
|
||
|
This short document shows you how you can include R code in your latex
|
||
|
reports. There are (probably) better ways, but this is certainly one
|
||
|
good approach. (If you come up with a nicer method, share it with the
|
||
|
class.) It relies on the \verb+listings+ package within latex, and so
|
||
|
for further help, read its documentation by running:
|
||
|
|
||
|
\begin{verbatim}
|
||
|
texdoc listings
|
||
|
\end{verbatim}
|
||
|
|
||
|
All the files (including a Makefile) needed to recompile this document
|
||
|
are available from:
|
||
|
|
||
|
\url{http://www.damtp.cam.ac.uk/user/sje30/teaching/r/rlistings}
|
||
|
|
||
|
|
||
|
|
||
|
\section{Including scripts}
|
||
|
|
||
|
If your script is called \url{simple.R}, include it into your
|
||
|
output by doing \verb+\lstinputlisting{simple.R}+ which should generate
|
||
|
something like:
|
||
|
|
||
|
\lstinputlisting{simple.R}
|
||
|
|
||
|
|
||
|
|
||
|
\section{Including R code within text}
|
||
|
|
||
|
To include small segments of R code within a paragraph, use the ri
|
||
|
macro. For example, \verb+\ri{x <- rnorm(20)}+ will generate
|
||
|
\ri{x <- rnorm(20)} in the paragraph.
|
||
|
|
||
|
If you have a group of R input (or output), just use the ``rc''
|
||
|
environment around the block of code (or output). See this example:
|
||
|
|
||
|
\begin{rc}
|
||
|
> a <- matrix(1:6, 2,3)
|
||
|
> a
|
||
|
[,1] [,2] [,3]
|
||
|
[1,] 1 3 5
|
||
|
[2,] 2 4 6
|
||
|
>
|
||
|
\end{rc}
|
||
|
|
||
|
|
||
|
|
||
|
\clearpage
|
||
|
\section{Including graphical output}
|
||
|
|
||
|
For nearly all graphs you are likely to generate, the best way of
|
||
|
including them in your article is by asking R to generate a pdf of the
|
||
|
graph. Include it with the includegraphics macro. Please refrain from
|
||
|
including bitmap images unless you have a particular need (e.g. the
|
||
|
pdf is too large).
|
||
|
|
||
|
\begin{figure}
|
||
|
\centering
|
||
|
\includegraphics[width=8cm]{simple.pdf}
|
||
|
\caption{Example output from R. Make sure that you generate PDF
|
||
|
images, and that your images have meaningful captions.}
|
||
|
\label{fig:example}
|
||
|
\end{figure}
|
||
|
|
||
|
\end{document}
|