Najbardziej wydajne zamówienie do nauki LaTeX, Sweave, Beamer? [Zamknięte]

9

Jestem bardzo zainteresowany nauczeniem się, jak tworzyć powtarzające się raporty z mojego kodu R i wizualizacji ggplot2.

Rozumiem, że LaTeX wydaje się być możliwą odpowiedzią i do użycia z R najczęściej używa Sweave. A do prezentacji od R do LaTeX ludzie używają Beamer.

Moje pytanie brzmi: czego powinienem się najpierw nauczyć, czy czego mam się uczyć jednocześnie? Nie znam Sweave ani LaTeX. Czy powinienem nauczyć się LaTeXa (przynajmniej trochę), a potem nauczyć się Sweave? A może zaproponowałbyś ich naukę w tym samym czasie?

Doceniamy linki do samouczków potwierdzających twoje odpowiedzi.

Idr
źródło

Odpowiedzi:

13

Osobiście chciałbym zacząć tutaj:

http://en.wikibooks.org/wiki/LaTeX

To nauczy Cię, jak utworzyć dokument w LaTeX, który się kompiluje. Gdy to zrobisz, zacznę po prostu pracować ze Sweave i uczyć się o liczbach, grafice, tabelach itp. W zależności od twoich potrzeb (link powyżej i wspaniały StackExchange (LaTeX / Cross Validated, Stack Overflow) powinienem kontynuować z tym wszystkim).

Zauważ też, że osobiście lubię Brew:

http://cran.r-project.org/web/packages/brew/brew.pdf

również w mojej tylnej kieszeni, ponieważ łatwiej jest uzyskać duże, zapętlone fragmenty kodu, w których chcesz zrobić 50 milionów wykresów lub coś w tym rodzaju.

Zauważ wreszcie, że czytałem kiedyś o knitrze:

http://yihui.name/knitr/

Który najwyraźniej dobrze gra z ggplot2. Jest bardzo podobny do Sweave, sam to kiedyś sprawdzę, jeszcze się nie obejrzałem.

RStudio:

http://rstudio.org/

Jest absolutną przyjemnością korzystać zarówno z dokumentów Sweave, jak i LaTeX, a także świetnego IDE do uruchomienia, jeśli jeszcze tego nie używasz.

Chris Beeley
źródło
2
Wersja rozwojowa RStudio (0.96) obsługuje teraz knitr jako silnik tkacki, dzięki czemu można łatwo przełączać się między Sweave i knitr.
Antoine Vernet,
8

Istotne pytanie

Jako uzupełnienie doskonałych odpowiedzi powyżej, chciałbym również zapytać:

Czy naprawdę chcesz nauczyć się korzystać z Beamera?

Pakiet ma krzywą uczenia się - być może bardziej niż jakikolwiek inny pakiet slajdów dla LaTeX - dlatego warto sprawdzić zalety i wady. Dla mnie są to ...

Plusy:

  1. Wydaje się, że wszyscy go używają (ale czy wszyscy dzielą się z tobą swoim źródłem? Jeśli nie, to zgodność wizualna jest jedyną zaletą)
  2. Sygnały, że znasz LaTeX i prawdopodobnie będziesz mieć matematykę na swoich slajdach, co może mieć trochę cache. [To nie jest ironiczne; czasami jest to pomocne]

Cons:

  1. Łatwo jest zamienić artykuł w rozmowę i odwrotnie, wycinając i wklejając.
  2. Pasujesz do bardzo dużej ilości tekstu i matematyki na slajdzie z ustawieniami domyślnymi.
  3. Fragmenty kodu mogą być niewygodne, aby poprawnie uciec.
  4. Wbudowane style prawie wszystkie zachęcają do wyświetlania dużych ilości grafik: sekwencji w zestawie slajdów itp.

Rzeczy, o które można się kłócić w obie strony:

  1. Istnieje polecenie pauzy do budowania slajdów linia po linii (podoba ci się? Nie.)
  2. Szablony są trudne do zmiany, więc najczęściej trafiasz do wbudowanych

Z tych powodów zawsze decydowałem się przeciw. Dla mnie wizualnie bardziej przyjemne i znacznie prostsze opcje obejmują Foiltex lub własną [wbudowaną] klasę slajdów LaTeX .

Związek z pierwotnym pytaniem

Znaczenie tych rozważań do pierwotnego pytania jest następujące: Dzięki narzędziom wspomnianym powyżej, kiedy już się wie, jak napisać najbardziej podstawowy dokument lateksowy i dołączyć do niego zdjęcia, nie ma nic więcej do zrobienia, aby móc tworzyć slajdy.

To nie tylko pozostawia więcej czasu na debugowanie Sweave, co będziesz robić dużo, ale także zwalnia czas na znalezienie takich rzeczy jak xtable , apsrtable i / lub funkcja mtable w memisc , które zamieniają obiekty modelu R w fajny LaTeX . Wszystko to warto przemyśleć przed zmaganiem się z pakietem slajdów, ponieważ są one bardziej przydatne.

sprzężonyprior
źródło
Bardzo dobra uwaga. Nigdy nie było dla mnie jasne, dlaczego tak wiele osób narzeka na „śmierć przez Powerpoint”, ale nikt nie wydaje się narzekać na „śmierć przez Beamera”. Beamer ma wszystkie zdumiewające właściwości Powerpoint, a także niektóre.
Carlos Accioly
@CarlosAccioly Właściwie skomentowałem „death by Beamer” - to mile widziana zmiana tempa w rozmowach zdominowanych przez PowerPoint, ale po 50-tej ogólnej prezentacji Beamera ciężko jest nie zgasić.
Fomite
8

Chociaż nie jest to dokładnie to, czego prosić polecam rzucić okiem na org-mode , w emacs trybie obejmującego wszystkie Twoje potrzeby.

Dlaczego polecam tryb org? (tj. profesjonaliści)

  • Tryb org umożliwia pisanie tekstu i kodu w jednym dokumencie, z równym podkreśleniem obu części, tekstu i kodu (chociaż nigdy nie korzystałem ze sprytu, czuję, że bardziej skupiam się na kodzie). W tym celu tryb org pozwala na wiele uproszczeń podczas pisania tekstu w porównaniu do czystego LaTeXa (tzn. & Jest & zamiast \ &, tekst staje się kursywą, otaczając go / lub pogrubiony *). Te elementy znaczników zostaną wyeksportowane do prawdziwego LaTeXa, ale znacznie ułatwią życie.
  • Tryb org pozwala eksportować tekst nie tylko jako LaTeX lub beamer, ale nawet HTML lub inne formaty (np. TaskJuggler, ... )
  • Trybu org można używać do innych zadań, takich jak organizowanie życia za pomocą gtd .
  • Emacs jest jednym z najpopularniejszych i najbardziej dojrzałych edytorów tekstu, dostępnych na wszystkie platformy i produktywnie wykorzystywanych od późnych lat 70. do wszelkiego rodzaju zadań programistycznych. Ponadto istnieje bardzo popularne połączenie z R, ESS , opracowane między innymi przez głównych członków R Kurta Hornika i Martina Maechlera. Używając emacsa, możesz go używać do wszystkich zadań, nie tylko do zamiatania i integracji R (to jeden z powodów, dla których niektórzy nazywają Emacsa raczej systemem operacyjnym niż edytorem). Sidenote: Emacs został pierwotnie opracowany przez mistrza GNU, Richarda Stallmana.

Wady:

  • zamiast uczyć się tylko jednej rzeczy na raz, będziesz musiał nauczyć się jeszcze więcej naraz: Emacs (który prawdopodobnie ma skomplikowaną obsługę), tryb org i LaTeX.
  • instalacja Emacsa, trybu org, ESS może być kłopotliwa. Zwłaszcza jeśli (tak jak ja) nic nie wiesz o lisp, pisanie pliku .emacs jest naprawdę do bani.

Jeśli chcesz spróbować (bardzo polecam), w Journal of Statistics Software znajdziesz najnowszą pracę na temat trybu org .

To, co zalecam na początek, to najpierw spróbować zrobić pierwsze dokumenty w trybie org i wyeksportować je jako LaTeX lub pdf (tj. Bez R). Jeśli się powiedzie, po prostu spróbuj dodać kod R do dokumentu i zobacz, jak możesz wyeksportować odpowiednie rzeczy.

Gorąco polecam uzyskanie ściągów lub kart referencyjnych dla wszystkich używanych programów (Emacs, org-mode, LaTeX, TeX i ESS). Co więcej, podstawowa znajomość LaTeX, na co wskazuje Chris Beely (wikibooks), zdecydowanie też bardzo pomaga.

Moja obecna konfiguracja polega na tym, że zwykle pracuję z trzema buforami równolegle. Jeden bufor trybu org z dokumentem, jeden skrypt R trybu ESS do przechowywania kodu i wypróbowywania różnych rzeczy, a jedna konsola R jest dostępna z obu skryptów. To działa naprawdę świetnie.

Niektóre rzeczy, które lubię używać:

Henrik
źródło
tworzysz przekonującą argumentację dla EMACS, ale już przeszedłem długą drogę uczenia się VIM i waham się przed ponownym przejściem do tej krzywej uczenia się. Używam wtyczki R-Vim, która jest pomocna, ale nie robi prawie wszystkiego, co opisujesz, co potrafi ESS.
Idr
Zdecydowanie rozumiem, ale wydaje się, że nie jest za późno, aby zacząć od czegoś nowego. Jestem bardzo zadowolony z mojej obecnej konfiguracji. Piszę prace i wykonuję skomplikowane prace analityczne w tym samym środowisku.
Henrik
3

Zdecydowanie powinieneś nauczyć się LaTeXa przed uruchomieniem beamera.

To, ile LaTeX chcesz się nauczyć przed dodaniem Sweave (lub podczas nauki Sweave), zależy od tego, co zrobisz z LaTeX, inaczej niż napisanie rzeczy z kodu R. LaTeX jest ogromny.

Peter Flom
źródło