18

我必须承认,今天是我使用 Sweave 或 LaTeX 的第一天。对,是真的。我今天意识到,如果没有我的参与,我的“40 岁之前”遗愿清单不会自行解决。和我这一代的许多人一样,学习 Sweave 和 LaTeX 是我的遗愿清单。

所以有了这么长的序言,我有一个非常好的第一个 Sweave 文档:

\documentclass{article}
\begin{document}
\title{Look Mom! I'm doing \LaTeX}
\author{JD Long}
\maketitle
\section{Where I get both funky and fresh}
<<make some randomness>>=
  set.seed(12)
  t <- rnorm(100)
@
and an example plot
\begin{center}
<<fig=TRUE,echo=FALSE>>=
  plot(density(t))
@
\end{center}
This is a very simple example of how we might get started with Sweave. You know what comes next, right? That's right... Lorem Ipsum, ladies! 

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin sed sem est. Pellentesque massa magna, ullamcorper eget lacinia sit amet, dignissim ac leo. Fusce hendrerit elit vitae lacus mollis suscipit. 
\end{document}

这产生了这个美妙的输出:

在此处输入图像描述

这么多很棒。但我真正想做的是开始引入精彩的 LaTeX 课程,比如Tufte-LaTeX课程,据我所知,它基本上将我的文档变成了精彩的、受启发的艺术作品。

那么如何将 Tufte-LaTeX 业务引入我的 Sweave 文档并使用它来使我的文档更加神奇呢?

4

4 回答 4

12

我有点喜欢这样,因为我的标准标题包裹在您的文档周围:

\documentclass{tufte-handout}
\usepackage{amsmath}  % extended mathematics
\usepackage{booktabs} % book-quality tables
\usepackage{units}    % non-stacked fractions and better unit spacing
\usepackage{multicol} % multiple column layout facilities
\usepackage{lipsum}   % filler text
\usepackage{fancyvrb} % extended verbatim environments
  \fvset{fontsize=\normalsize}% default font size for fancy-verbatim environments
\usepackage{xspace}

我会注意到你不应该在标题或作者之类的东西上加上任何标记,因为 tufte-handout 真的不太适合它:

在此处输入图像描述

Tufte 类很容易通过 TeXLive 安装为“tufte-latex”包,如果我没记错的话,它包括必要的材料和一些示例。

于 2011-11-09T19:46:40.467 回答
10

我想这更像是一个 LaTeX 问题,而不是一个 Sweave 问题。我tufte-handout很久以前就用这个pgfSweave包和这个类,你可以在这里找到一个例子(这是我的数据挖掘课程的作业之一)。

既然你们已经写下了如何使用 Sweave 来做这件事,我在这里没有什么要补充的,除了我真的不喜欢 Sweave 的默认样式。我的意思是 LaTeX 使用fancyvrb. R 图形中的默认字体样式也是我不喜欢的。他们可以破坏塔夫特班的美丽。使用的pgfSweavetikzDevice在样式方面要好得多。Sweave 的一些挫败感(例如风格)让我决定重写一个新引擎knitr;它可以在这里找到

于 2011-11-09T20:12:35.800 回答
5

我用这个模板做笔记:

\documentclass{tufte-book}
\usepackage{graphicx}
\usepackage{lipsum}
\setkeys{Gin}{width=\linewidth,totalheight=\textheight,keepaspectratio}
% Prints a trailing space in a smart way.
\usepackage{xspace}


\usepackage{hyperref}
\usepackage{amsmath}

\newcommand{\tthdump}[1]{#1}
\usepackage{makeidx}
\makeindex

\title{My title}

\begin{document}
\setkeys{Gin}{width=1.1\marginparwidth} %% Sweave

 \section{Where I get both funky and fresh}
<<make some randomness>>=
  set.seed(12)
  t <- rnorm(100)
@
and an example plot
\begin{center}
<<fig=TRUE,echo=FALSE>>=
  plot(density(t))
@
\end{center}

%% a margin figure
<<a, fig=FALSE, echo=FALSE>>=
plot(density(t))
@ 
\begin{marginfigure}
<<fig=TRUE, echo=FALSE>>=
<<a>>
@   
\end{marginfigure}

This is a very simple example of how we might get started with Sweave. You know what comes next, right? That's right... Lorem Ipsum, ladies! 
\lipsum

\end{document}
于 2011-11-09T19:34:42.677 回答
4

与涉及某种编程的许多事情一样,我建议将问题分离作为第一策略。

换句话说,使用 Tufte 类的面条(我在 22 多年的 LaTeX 中没有使用过 ;-) 直到你满意,然后将你想要使用的东西移回 Sweaving。Sweave 在背后做了很多有趣的事情,可能会让人困惑。[约翰刚刚为你做了第一部分。]

最后:如果其他一切都失败了,请按照我的做法在 tex.stackexchange.com 上寻求 (La)TeX 帮助 ;-)

于 2011-11-09T19:34:57.803 回答