[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Bug: Org-Babel Mode R Plot Output to LaTeX File [Babel] [7.5]
From: |
Eric Schulte |
Subject: |
Re: [O] Bug: Org-Babel Mode R Plot Output to LaTeX File [Babel] [7.5] |
Date: |
Mon, 18 Jul 2011 10:36:28 -0600 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) |
Feiming Chen <address@hidden> writes:
> Hi Eric:
>
> Thanks a lot! It would be nice if Org-Babel model could
> automatically add the "#+ATTR_LaTeX" lines (from the hint in the R
> code header line) during LaTeX export.
>
I don't think this will happen at least in the near term, as searching
out and creating/changing org export directives would be a major change
to the current behavior which inserts code results, and would cross some
semantic lines separating parts of Org-mode.
In this case I don't think the relatively limited convenience justifies
the added complexity.
>
> Somehow I failed to compile the file on my system. It seems the line:
>
> #+ATTR_LaTeX: width=5px
>
> has corrupted the PDF file generated in R. Because after "C-c C-e d", I
> get the following error:
>
> !pdfTeX error: pdflatex (file ./a3.pdf): PDF inclusion: required page does
> not exist <0>
>
> ==> Fatal error occurred, no output PDF file produced!
>
>
> and I could not open the PDF file of the R plot any more (the error
> message is "Cannot display this page! Maybe because of a conversion
> failure").
>
> Attached is the simplified org file that failed on "LaTeX transport" on my
> computer.
>
I believe in this case the problem is caused by the lack of any headline
levels. The LaTeX exporter can be weird about headline levels, try
adding a line like
* top
to the org file before the code block. That fixes the problem on my
system.
Also, there is no way that an #+attr_latex line could affect the
execution of a code block, precisely because of the simplifying
separation of distinct components mentioned earlier.
Best -- Eric
>
> Thanks!
>
> Sincerely,
>
> Feiming Chen
>
> --- On Fri, 7/15/11, Eric Schulte <address@hidden> wrote:
>
> From: Eric Schulte <address@hidden>
> Subject: Re: [O] Bug: Org-Babel Mode R Plot Output to LaTeX File [Babel] [7.5]
> To: "Feiming Chen" <address@hidden>
> Cc: address@hidden
> Date: Friday, July 15, 2011, 9:32 AM
>
> Hi Feiming,
>
> The "width" and "height" header arguments are passed to R to affect the
> size of the generated file e.g.,
>
> png(filename="a1.png",width=500,height=500)
>
> however they do not affect the generated latex code. Luckily Org-mode
> does support passing information like image width to latex figures. See
> my attached version of your test file which uses #+ATTR_LaTeX lines to
> specify the width during LaTeX
> export.
>
> Best -- Eric
>
>
> -----Inline Attachment Follows-----
>
>
> Feiming Chen <address@hidden> writes:
>
>> Hi, I like org-mode and org-babel mode very much, but recently I am having
>> problems outputting R graphics to LaTeX report with
>> Org-Babel mode. Attached is my test file, where I am generating 4
>> simple plots of different sizes and format (.png or .pdf). The HTML
>> export is satisfactory, however, the LaTeX export (C-c C-e l) presents two
>> problems:
>>
>> 1. All 4 plots have the same size (10em) which is different from the
>> header specification and is too small.
>>
>> \includegraphics[width=10em]{a1.png} ...
>> \includegraphics[width=10em]{a2.png} ...
>>
> \includegraphics[width=10em]{a3.pdf} ...
>> \includegraphics[width=10em]{a4.pdf} ...
>>
>> 2. While exporting to PDF file, the R code is mysteriously lost in
>> the R execution for the PDF output of the plots and the compilation
>> failed correspondingly:
>>
>>> pdf(file="a3.pdf",width=5,height=5)
>>>
>>> dev.off()
>>> pdf(file="a4.pdf",width=10,height=10)
>>>
>>> dev.off()
>>
>>
>> Hopefully you can replicate my errors and help me on this. Thanks a
>> lot!
>>
>> Best regards,
>> Feiming Chen
>>
>> ____________________________________________________________
>>
>>
>> Emacs : GNU Emacs 23.2.1 (i386-redhat-linux-gnu, GTK+ Version 2.21.4)
>> of 2010-07-08 on x86-05.phx2.fedoraproject.org
>> Package: Org-mode version 7.5
>>
>> current state:
>>
> ==============
>> (setq
>> org-file-apps '((auto-mode . emacs) ("\\.mm\\'" . default)
>> ("\\.x?html?\\'" . "firefox %s") ("\\.pdf\\'" . "evince %s"))
>> org-export-latex-after-initial-vars-hook '(org-beamer-after-initial-vars)
>> org-hide-block-startup t
>> org-speed-command-hook '(org-speed-command-default-hook
>> org-babel-speed-command-hook)
>> org-src-fontify-natively t
>> org-babel-load-languages '((emacs-lisp . t) (R . t))
>> org-metaup-hook '(org-babel-load-in-session-maybe)
>> org-after-todo-state-change-hook '(org-clock-out-if-current)
>> org-export-blocks-postblock-hook '(org-exp-res/src-name-cleanup)
>> org-export-latex-format-toc-function 'org-export-latex-format-toc-default
>> org-tab-first-hook
> '(org-hide-block-toggle-maybe
>> org-src-native-tab-command-maybe
>> org-babel-hide-result-toggle-maybe)
>> outline-regexp "\\*+ "
>> org-src-mode-hook '(org-src-babel-configure-edit-buffer
>> org-src-mode-configure-edit-buffer)
>> org-confirm-shell-link-function 'yes-or-no-p
>> org-reveal-start-hook '(org-decrypt-entry)
>> org-export-first-hook '(org-beamer-initialize-open-trackers)
>> org-format-latex-header
>> "\\documentclass{article}\n\\usepackage[usenames]{color}\n\\usepackage{amsmath}\n\\usepackage[mathscr]{eucal}\n%
>> Feiming's Customization
>> BEGIN\n\\usepackage[colorlinks=true]{hyperref}\n\\input{/home/chen/lib/math.tex}\n%
>> Feiming's
> Customization END\n\\pagestyle{empty} % do not
>> remove\n[PACKAGES]\n[DEFAULT-PACKAGES]\n% The settings below are
>> copied from
>> fullpage.sty\n\\setlength{\\textwidth}{\\paperwidth}\n\\addtolength{\\textwidth}{-3cm}\n\\setlength{\\oddsidemargin}{1.5cm}\n\\addtolength{\\oddsidemargin}{-2.54cm}\n\\setlength{\\evensidemargin}{\\oddsidemargin}\n\\setlength{\\textheight}{\\paperheight}\n\\addtolength{\\textheight}{-\\headheight}\n\\addtolength{\\textheight}{-\\headsep}\n\\addtolength{\\textheight}{-\\footskip}\n\\addtolength{\\textheight}{-3cm}\n\\setlength{\\topmargin}{1.5cm}\n\\addtolength{\\topmargin}{-2.54cm}"
>> org-startup-indented t
>> org-agenda-before-write-hook '(org-agenda-add-entry-text)
>> org-babel-pre-tangle-hook '(save-buffer)
>> org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers
>>
> org-cycle-show-empty-lines
>> org-optimize-window-after-visibility-change)
>> org-export-preprocess-before-normalizing-links-hook
>> '(org-remove-file-link-modifiers)
>> org-use-speed-commands t
>> org-mode-hook '(turn-on-org-cdlatex
>> (lambda nil
>> (setq org-mouse-context-menu-function
>> (quote org-mouse-context-menu))
>> (when (memq (quote context-menu) org-mouse-features)
>> (org-defkey org-mouse-map [mouse-3] nil)
>> (org-defkey org-mode-map [mouse-3]
>>
> (quote org-mouse-show-context-menu))
>> )
>> (org-defkey org-mode-map [down-mouse-1]
>> (quote org-mouse-down-mouse))
>> (when (memq (quote context-menu) org-mouse-features)
>> (org-defkey org-mouse-map [C-drag-mouse-1]
>> (quote org-mouse-move-tree))
>> (org-defkey org-mouse-map [C-down-mouse-1]
>> (quote org-mouse-move-tree-start))
>> )
>> (when (memq (quote yank-link)
> org-mouse-features)
>> (org-defkey org-mode-map [S-mouse-2]
>> (quote org-mouse-yank-link))
>> (org-defkey org-mode-map [drag-mouse-3]
>> (quote org-mouse-yank-link))
>> )
>> (when (memq (quote move-tree) org-mouse-features)
>> (org-defkey org-mouse-map [drag-mouse-3]
>> (quote org-mouse-move-tree))
>> (org-defkey org-mouse-map [down-mouse-3]
>> (quote
> org-mouse-move-tree-start))
>> )
>> (when (memq (quote activate-stars) org-mouse-features)
>> (font-lock-add-keywords nil
>> (\`
>> (((\, outline-regexp) 0
>> (\`
>> (face org-link mouse-face highlight keymap
>> (\, org-mouse-map))
>> )
>> (quote prepend))
>>
> )
>> )
>> t)
>> )
>> (when (memq (quote activate-bullets) org-mouse-features)
>> (font-lock-add-keywords nil
>> (\`
>> (("^[ ]*\\([-+*]\\|[0-9]+[.)]\\) +"
>> (1
>> (\`
>> (face org-link keymap (\, org-mouse-map) mouse-face
>>
> highlight)
>> )
>> (quote prepend))
>> )
>> )
>> )
>> t)
>> )
>> (when (memq (quote activate-checkboxes) org-mouse-features)
>> (font-lock-add-keywords nil
>> (\`
>> (("^[ ]*\\([-+*]\\|[0-9]+[.)]\\) +\\(\\[[
> X]\\]\\)"
>> (2
>> (\`
>> (face bold keymap (\, org-mouse-map) mouse-face
>> highlight)
>> )
>> t)
>> )
>> )
>> )
>> t)
>> )
>> (defadvice org-open-at-point
>>
> (around org-mouse-open-at-point activate)
>> (let ((context (org-context)))
>> (cond ((assq :headline-stars context) (org-cycle))
>> ((assq :checkbox context) (org-toggle-checkbox))
>> ((assq :item-bullet context)
>> (let ((org-cycle-include-plain-lists t)) (org-cycle)))
>> (t ad-do-it))
>> )
>> )
>> )
>>
> #[nil "\300\301\302\303\304$\207"
>> [org-add-hook change-major-mode-hook org-show-block-all append
>> local]
>> 5]
>> #[nil "\300\301\302\303\304$\207"
>> [org-add-hook change-major-mode-hook org-babel-show-result-all
>> append local]
>> 5]
>> org-babel-result-hide-spec org-babel-hide-all-hashes)
>> org-ctrl-c-ctrl-c-hook '(org-babel-hash-at-point
>> org-babel-execute-safely-maybe)
>> org-confirm-elisp-link-function 'yes-or-no-p
>> org-agenda-mode-hook '((lambda nil
>>
> (setq org-mouse-context-menu-function
>> (quote org-mouse-agenda-context-menu))
>> (org-defkey org-agenda-mode-map [mouse-3]
>> (quote org-mouse-show-context-menu))
>> (org-defkey org-agenda-mode-map [down-mouse-3]
>> (quote org-mouse-move-tree-start))
>> (org-defkey org-agenda-mode-map [C-mouse-4]
>> (quote org-agenda-earlier))
>> (org-defkey
> org-agenda-mode-map [C-mouse-5]
>> (quote org-agenda-later))
>> (org-defkey org-agenda-mode-map [drag-mouse-3]
>> (quote
>> (lambda (event) (interactive "e")
>> (case (org-mouse-get-gesture event)
>> (:left (org-agenda-earlier 1))
>> (:right (org-agenda-later 1)))
>> )
>>
> )
>> )
>> )
>> )
>> org-export-interblocks '((lob org-babel-exp-lob-one-liners)
>> (src org-babel-exp-inline-src-blocks))
>> org-occur-hook '(org-first-headline-recenter)
>> org-export-preprocess-before-selecting-backend-code-hook
>> '(org-beamer-select-beamer-code)
>> org-confirm-babel-evaluate nil
>> org-infojs-options '((path . "http://bancs.bdx.com/chen/lib/org-info.js")
>> (view . "overview") (toc . "nil") (ftoc . "0")
>>
> (tdepth . "max") (sdepth . "max") (mouse . "underline")
>> (buttons . "0") (ltoc . "1") (up . :link-up)
>> (home . :link-home))
>> org-src-tab-acts-natively t
>> org-export-latex-final-hook '(org-beamer-amend-header org-beamer-fix-toc
>> org-beamer-auto-fragile-frames
>> org-beamer-place-default-actions-for-lists)
>> org-metadown-hook '(org-babel-pop-to-session-maybe)
>> org-export-blocks '((src org-babel-exp-src-block nil)
>> (comment org-export-blocks-format-comment
> t)
>> (ditaa org-export-blocks-format-ditaa nil)
>> (dot org-export-blocks-format-dot nil))
>> )
>>
>>
--
Eric Schulte
http://cs.unm.edu/~eschulte/