Использование класса Tufte-Latex в Sweave

Должен признаться, что сегодня я впервые использую 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 и использовать его, чтобы сделать мои документы более волшебными?


person JD Long    schedule 09.11.2011    source источник
comment
В твоей латыни есть несколько опечаток. Вам нужно установить лучший орфографический словарь, этого просто не пойдет. И список желаний в возрасте 40 лет - вы сказали своему страховщику жизни? (И я великодушен, описывая вашу латынь как имеющую опечатки. Некоторые из них лучше заменить на 3-е лицо, иначе вы ... Я не могу это сказать.)   -  person Iterator    schedule 10.11.2011


Ответы (4)


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

\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-раздаточный материал действительно не очень хорошо с этим справляется:

введите описание изображения здесь

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

person James Howard    schedule 09.11.2011
comment
Должен ли я что-то делать, чтобы биты Tufte были доступны для вызова как класс документа? Он должен быть установлен или что-то в этом роде? - person JD Long; 10.11.2011
comment
@JDLong Просто поместите файлы стиля Latex в свой локальный каталог texmf (если вы загрузили их из Интернета) или используйте диспетчер пакетов TeXLive, как описано на tex.SE. - person chl; 10.11.2011
comment
Да, tufte можно установить через TeXLive, и если вы еще не используете TeXLive, вам следует это сделать. Он предоставляет действительно хороший и простой способ управлять установленными пакетами, а также предоставляет простой и (относительно) прозрачный механизм для обновления этих пакетов. - person James Howard; 10.11.2011
comment
@JamesHoward, не могли бы вы добавить небольшую аннотацию об установке tufte через TeXLive в текст своего ответа? - person JD Long; 10.11.2011

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

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

person Yihui Xie    schedule 09.11.2011
comment
Теперь вы можете ознакомиться с руководством по работе с графикой для вязального устройства по адресу yihui.github.com/knitr/demo/ graphics, в которой используется класс tufte-handout. Здесь есть как исходный код, так и вывод. Вы многое потеряете, если воспользуетесь Sweave :) - person Yihui Xie; 15.12.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}
person jverzani    schedule 09.11.2011

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

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

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

person Dirk Eddelbuettel    schedule 09.11.2011
comment
Я бы предпочел столкнуться с волшебным говорящим единорогом, который может передать мудрость через меня, верхом на спине в Нарнию. Неужели я прошу так много? - person JD Long; 09.11.2011