Hi, How could I effect the plot saved in a file and the output produced shown in the buffer by using a single execution of R in the following snippet? #+begin_src R :results output :session print(seq(1,10)) plot(seq(1,10)) #+end_src Thank you. Eythan
[-- Attachment #1: Type: text/plain, Size: 1810 bytes --] On Fri, Jun 24, 2011 at 2:05 PM, Eythan Weg <eythanweg@gmail.com> wrote: > > > > Thank you. True. But, I would like, if possible, to have the link to > the saved plot as a link in the output, for free. > Just add it as a cat() statement: #+begin_src R :results output :session print(seq(1,10)) pdf("ThePlot.pdf") plot(seq(1,10)) dev.off() cat("[[./ThePlot.pdf]]") #+end_src > Eythan > > > Rainer M Krug <r.m.krug@gmail.com> > Fri, 24 Jun 2011 13:18:36 +0200 > > On Fri, Jun 24, 2011 at 12:10 PM, Eythan Weg <eythanweg@gmail.com> > wrote: > > > Hi, > > How could I effect the plot saved in a file and the output > produced > shown in the buffer by using a single execution of R in the > following > snippet? > > > > Why not the old R way: > > #+begin_src R :results output :session > print(seq(1,10)) > > pdf("ThePlot.pdf") > > plot(seq(1,10)) > > dev.off() > > #+end_src > > > Rainer > > > Thank you. > Eythan > > > > > > > -- > Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation > Biology, UCT), Dipl. Phys. (Germany) > > Centre of Excellence for Invasion Biology > Stellenbosch University > South Africa > > Tel : +33 - (0)9 53 10 27 44 > Cell: +33 - (0)6 85 62 59 98 > Fax (F): +33 - (0)9 58 10 27 44 > > Fax (D): +49 - (0)3 21 21 25 22 44 > > email: Rainer@krugs.de > > Skype: RMkrug > -- Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Stellenbosch University South Africa Tel : +33 - (0)9 53 10 27 44 Cell: +33 - (0)6 85 62 59 98 Fax (F): +33 - (0)9 58 10 27 44 Fax (D): +49 - (0)3 21 21 25 22 44 email: Rainer@krugs.de Skype: RMkrug [-- Attachment #2: Type: text/html, Size: 3210 bytes --]
eythanweg@gmail.com (Eythan Weg) writes: > Hi, > > How could I effect the plot saved in a file and the output produced > shown in the buffer by using a single execution of R in the following > snippet? > Each code block can only return a single output type, so you will have to split your code block into two, however (given that you are using sessions) this should not affect the runtime behavior. The following will work... #+begin_src R :results output :session print(seq(1,10)) #+end_src #+begin_src R :file example.png :session plot(seq(1,10)) #+end_src Best -- Eric > > #+begin_src R :results output :session > print(seq(1,10)) > plot(seq(1,10)) > #+end_src > > Thank you. > Eythan > > -- Eric Schulte http://cs.unm.edu/~eschulte/
Eythan, This sounds similar to something I'd already done on Worg, ie: dual format returns in R. The first example (RBabelExample) is really R outputting to PNG for viewing inline in emacs with inline-images, and PDF for inclusion into Latex. Maybe you can adapt it to return your text, and graph separately. http://orgmode.org/worg/org-contrib/babel/languages/ob-doc-R.html Enjoy. On Fri, Jun 24, 2011 at 06:10:47AM -0400, Eythan Weg wrote: > > Hi, > > How could I effect the plot saved in a file and the output produced > shown in the buffer by using a single execution of R in the following > snippet? > > #+begin_src R :results output :session > print(seq(1,10)) > plot(seq(1,10)) > #+end_src > > Thank you. > Eythan > > ------------------------------------------------------------------ Russell Adams RLAdams@AdamsInfoServ.com PGP Key ID: 0x1160DCB3 http://www.adamsinfoserv.com/ Fingerprint: 1723 D8CA 4280 1EC9 557F 66E8 1154 E018 1160 DCB3
True again. It solves the problem by bypassing a babel's weakness, I think. Eythan Rainer M Krug <r.m.krug@gmail.com> Fri, 24 Jun 2011 14:28:41 +0200 On Fri, Jun 24, 2011 at 2:05 PM, Eythan Weg <eythanweg@gmail.com> wrote: Thank you. True. But, I would like, if possible, to have the link to the saved plot as a link in the output, for free. Just add it as a cat() statement: #+begin_src R :results output :session print(seq(1,10)) pdf("ThePlot.pdf") plot(seq(1,10)) dev.off() cat("[[./ThePlot.pdf]]") #+end_src Eythan Rainer M Krug <r.m.krug@gmail.com> Fri, 24 Jun 2011 13:18:36 +0200 On Fri, Jun 24, 2011 at 12:10 PM, Eythan Weg <eythanweg@gmail.com> wrote: Hi, How could I effect the plot saved in a file and the output produced shown in the buffer by using a single execution of R in the following snippet? Why not the old R way: #+begin_src R :results output :session print(seq(1,10)) pdf("ThePlot.pdf") plot(seq(1,10)) dev.off() #+end_src Rainer Thank you. Eythan -- Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Stellenbosch University South Africa Tel : +33 - (0)9 53 10 27 44 Cell: +33 - (0)6 85 62 59 98 Fax (F): +33 - (0)9 58 10 27 44 Fax (D): +49 - (0)3 21 21 25 22 44 email: Rainer@krugs.de Skype: RMkrug -- Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Stellenbosch University South Africa Tel : +33 - (0)9 53 10 27 44 Cell: +33 - (0)6 85 62 59 98 Fax (F): +33 - (0)9 58 10 27 44 Fax (D): +49 - (0)3 21 21 25 22 44 email: Rainer@krugs.de Skype: RMkrug
Eric Schulte <schulte.eric@gmail.com> Fri, 24 Jun 2011 11:11:52 -0700 eythanweg@gmail.com (Eythan Weg) writes: > Hi, > > How could I effect the plot saved in a file and the output produced > shown in the buffer by using a single execution of R in the following > snippet? > Each code block can only return a single output type, so you will have Is this property fundamental, or temporary? to split your code block into two, however (given that you are using sessions) this should not affect the runtime behavior. The following will work... #+begin_src R :results output :session print(seq(1,10)) #+end_src #+begin_src R :file example.png :session plot(seq(1,10)) #+end_src Best -- Eric Thank you. Eythan
[-- Attachment #1: Type: text/plain, Size: 2736 bytes --] On Sat, Jun 25, 2011 at 2:00 PM, Eythan Weg <eythanweg@gmail.com> wrote: > > > True again. It solves the problem by bypassing a babel's weakness, I > think. > I would not say babel's weakness - rether a strength which result's in it's simplicity and power. Rainer > Eythan > > Rainer M Krug <r.m.krug@gmail.com> > Fri, 24 Jun 2011 14:28:41 +0200 > > On Fri, Jun 24, 2011 at 2:05 PM, Eythan Weg <eythanweg@gmail.com> > wrote: > > > > > Thank you. True. But, I would like, if possible, to have the link > to > the saved plot as a link in the output, for free. > > > Just add it as a cat() statement: > > #+begin_src R :results output :session > print(seq(1,10)) > pdf("ThePlot.pdf") > plot(seq(1,10)) > dev.off() > cat("[[./ThePlot.pdf]]") > #+end_src > > > Eythan > > > Rainer M Krug <r.m.krug@gmail.com> > Fri, 24 Jun 2011 13:18:36 +0200 > > > > > On Fri, Jun 24, 2011 at 12:10 PM, Eythan Weg <eythanweg@gmail.com> > wrote: > > > Hi, > > How could I effect the plot saved in a file and the output > produced > shown in the buffer by using a single execution of R in the > following > snippet? > > > > Why not the old R way: > > #+begin_src R :results output :session > print(seq(1,10)) > > pdf("ThePlot.pdf") > > plot(seq(1,10)) > > dev.off() > > #+end_src > > > Rainer > > > Thank you. > Eythan > > > > > > > -- > Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation > Biology, UCT), Dipl. Phys. (Germany) > > Centre of Excellence for Invasion Biology > Stellenbosch University > South Africa > > Tel : +33 - (0)9 53 10 27 44 > Cell: +33 - (0)6 85 62 59 98 > Fax (F): +33 - (0)9 58 10 27 44 > > Fax (D): +49 - (0)3 21 21 25 22 44 > > email: Rainer@krugs.de > > Skype: RMkrug > > > > > -- > Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation > Biology, UCT), Dipl. Phys. (Germany) > > Centre of Excellence for Invasion Biology > Stellenbosch University > South Africa > > Tel : +33 - (0)9 53 10 27 44 > Cell: +33 - (0)6 85 62 59 98 > Fax (F): +33 - (0)9 58 10 27 44 > > Fax (D): +49 - (0)3 21 21 25 22 44 > > email: Rainer@krugs.de > > Skype: RMkrug > -- Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Stellenbosch University South Africa Tel : +33 - (0)9 53 10 27 44 Cell: +33 - (0)6 85 62 59 98 Fax (F): +33 - (0)9 58 10 27 44 Fax (D): +49 - (0)3 21 21 25 22 44 email: Rainer@krugs.de Skype: RMkrug [-- Attachment #2: Type: text/html, Size: 4762 bytes --]
> > Each code block can only return a single output type, so you will have > > Is this property fundamental, or temporary? > This is intentional and will not be changed. The alternative would introduce many complications without adding any real new expressive power to code blocks. Best -- Eric -- Eric Schulte http://cs.unm.edu/~eschulte/