From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric S Fraga Subject: [babel] how to pass data to gnuplot from another block Date: Fri, 22 Nov 2013 09:57:20 +0000 Message-ID: <87d2lsbvy7.fsf@ucl.ac.uk> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:58317) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VjnUj-0001xe-FO for emacs-orgmode@gnu.org; Fri, 22 Nov 2013 04:57:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VjnUc-00060L-W4 for emacs-orgmode@gnu.org; Fri, 22 Nov 2013 04:57:49 -0500 Received: from mail-db8lp0188.outbound.messaging.microsoft.com ([213.199.154.188]:32472 helo=db8outboundpool.messaging.microsoft.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VjnUc-0005zj-N8 for emacs-orgmode@gnu.org; Fri, 22 Nov 2013 04:57:42 -0500 Received: from mail128-db8 (localhost [127.0.0.1]) by mail128-db8-R.bigfish.com (Postfix) with ESMTP id BF757160760 for ; Fri, 22 Nov 2013 09:57:36 +0000 (UTC) Received: from DB8EHSMHS017.bigfish.com (unknown [10.174.8.236]) by mail128-db8.bigfish.com (Postfix) with ESMTP id 921334E00B4 for ; Fri, 22 Nov 2013 09:57:34 +0000 (UTC) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Hello, everything I have seen on the list and on Worg seems to indicate that it should be possible to pass data from a babel src block to a gnuplot src block. See, for instance, the excellent article on data collection and analysis at http://orgmode.org/worg/org-contrib/babel/examples/data-collection-analysis.html I don't have R so I have not tried the examples on this page. However, I have tried the following using octave and gnuplot: #+begin_src org ,#+TITLE: examplebug.org ,#+AUTHOR: Eric S Fraga ,* bubble and dew points ,#+name: bubble-point-temperatures ,#+begin_src octave :results raw output A = [ 6.86880 6.84941]'; B = [1154.646 1206.001]'; C = [ 226.046 223.148]'; pv = @(T) 10.^(A-B./(T+C)); x = 0; res = []; while x<(1+1e-3) f = @(T) 760 - [x (1-x)]*pv(T); T = fsolve(f, 70); printf("| %5.2f | %7.2f | \n", x, T); res = [res; [x T] ]; x = x + 0.05; endwhile ,#+end_src ,#+begin_src gnuplot :var data=bubble-point-temperatures :file "bubble.pdf" set terminal pdfcairo mono enhanced font ",12" size 10cm,6cm plot data ,#+end_src ,#+results: [[file:bubble.pdf]] #+end_src Trying to execute the gnuplot block leads to an error in gnuplot because the output of the octave data block is being put directly into the data variable instead of into a file whose name is passed to the data variable. The latter happens if the source of the data is a table instead of a src block. I have tried various combinations of output directives for the first src block but to no avail. I have tried this with "emacs -Q", by the way, and my org is up to date as of a few minutes ago! What am I doing wrong please? Thanks, eric -- : Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.2.3c-266-g7a726d