Я хотел бы найти способ использования метки LaTeX \ref{}
для комментариев в R-коде в файле Sweave .Rnw. Вот два примера, один в печатиДинамические ссылки на цифры в комментарии R в документе Sweave
http://cm.bell-labs.com/cm/ms/departments/sia/project/nlme/UGuide.pdf
и один, чтобы использовать для работы с:
.Rnw файл
% File: example.Rnw
\documentclass{article}
\usepackage{fullpage}
\usepackage{graphics}
\usepackage{Sweave}
\usepackage[margin = 10pt, font=small, labelfont={bf}]{caption}
\begin{document}
Here is an example file to show what I want to do. I would like to figure out how to use the \LaTeX\ reference command to reference a figure being generated by R code. Note in the R code, in a comment there is a reference to the figure, but of course the output file shows a verbatim copy of the \LaTeX\ markup. Does anyone know how to get something for Figure \ref{fig2}?
<< example plot >>=
library(reshape)
library(ggplot2)
n <- 100
lambda <- 1/3
x <- seq(0, qexp(0.999, rate = lambda), length = n)
q1.a <- data.frame(x = x,
f = dexp(x, rate = lambda),
F = pexp(x, rate = lambda))
q1.a <- melt(q1.a, id.vars = 'x')
g <- ggplot(q1.a) + # Produces \ref{fig1}
aes(x = x, y = value) +
geom_line() +
facet_wrap(~ variable, scale = "free_y")
ggsave(g, filename = "example1.jpeg")
@
\begin{figure}[h]
\centering
\includegraphics[width = 0.48\textwidth]{./example1}
\caption{Exponential Distribution based plots.}
\label{fig1}
\end{figure}
Here is more of what I would like to see:
<< example plot 2 >>=
ggsave(g + geom_point(), filename = "example2.jpeg") # Produces Figure 2
@
\begin{figure}
\centering
\includegraphics[width = 0.48\textwidth]{./example2}
\caption{Exponential Distribution based plots with points and lines.}
\label{fig2}
\end{figure}
\end{document}
и PDF построен с R команды
Sweave(file = 'example.Rnw',
engine = "R",
keep.source = 'TRUE',
echo = 'TRUE',
results = 'verbatim')
tools::texi2dvi(file = "example.tex",
pdf = TRUE,
clean = TRUE)
Любое понимание того, как это было бы здорово.
Вы можете использовать 'brew' для обработки файла' Rnw' перед 'Sweave'. – baptiste
Список вводов/кода Sweave - это вариант в verbatim environment, чтобы не пытаться интерпретировать код R как LaTeX. Вы хотите, чтобы комментарии к коду «R» интерпретировались как LaTeX. Я не знаю, как, но, может быть, эта перефразировка поможет с решением. –
@BrianDiggs Хорошая точка. Ваш комментарий привел меня к решению, которое я опубликовал. Просто требуется другая 'verbatim' среда, которая позволяет' LaTeX' анализировать некоторый токен. – Ramnath