Использование класса Tufte-Latex в Sweave - PullRequest
18 голосов
/ 09 ноября 2011

Я должен признаться, что сегодня мой первый день с использованием 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}

, который дает такой замечательный вывод:

enter image description here

Так что это здорово.Но то, что я действительно хотел бы сделать, это начать вводить замечательные классы LaTeX, такие как Tufte-LaTeX , который, из того, что я понимаю, в основном превращает мои документы в блестящие, вдохновленные произведения искусства.

Итак, как мне включить бизнес Tufte-LaTeX в мой документ Sweave и использовать его, чтобы сделать мои документы более волшебными?

Ответы [ 4 ]

12 голосов
/ 09 ноября 2011

Мне нравится это, поскольку мой стандартный заголовок обернут вокруг вашего документа:

\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}

Я бы отметил, что вы не должны помещать какую-либо разметку в такие вещи, как заголовок или автор, поскольку раздаточный материал на самом деле не слишком хорошо с этим справляется:

enter image description here

Классы Tufte легко устанавливаются через TeXLive в виде пакета "tufte-latex", который включает необходимый материал и несколько примеров, если я правильно помню.

10 голосов
/ 10 ноября 2011

Полагаю, это больше похоже на вопрос LaTeX, чем на вопрос Стива Я давно использовал класс tufte-handout с пакетом pgfSweave, и вы можете найти пример здесь (это одна из моих домашних работ по курсу интеллектуального анализа данных).

Поскольку вы, ребята, записали, как это сделать с помощью Sweave, мне нечего здесь добавить, кроме того, что мне действительно не нравится стиль Sweave по умолчанию. Я имею в виду LaTeX среды, определенные с использованием fancyvrb. Стиль шрифта по умолчанию в R-графике также мне не нравится. Они могут просто испортить красоту класса Tufte. Пакет pgfSweave, использующий tikzDevice, намного лучше с точки зрения стилей. Некоторые проблемы со Sweave (например, стиль) заставили меня принять решение переписать новый движок knitr; это доступно здесь .

5 голосов
/ 09 ноября 2011

Я использовал этот шаблон для заметок:

\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}
4 голосов
/ 09 ноября 2011

Как и многие другие вещи, включающие программирование , я рекомендую разделение проблем в качестве первой стратегии.

Другими словами, лапшу с классом Tufte (которую я не использовал в течение более 22 лет LaTeX ;-), пока вы счастливы, затем перенесите то, что вы хотите использовать, обратно в Sweaving. Sweave делает много забавных вещей за спиной, которые могут сбить с толку. [И Джон только что сделал эту первую часть для тебя. ]

Наконец: если ничего не помогает, сделайте то, что я делаю, и попросите (La) TeX помочь на tex.stackexchange.com; -)

...