From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roger Mason Subject: Re: Output result of source block to a file Date: Thu, 06 Jun 2019 15:34:28 -0230 Message-ID: References: <877ea041ee.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([209.51.188.92]:50601) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hYwkd-00050j-AN for emacs-orgmode@gnu.org; Thu, 06 Jun 2019 14:04:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hYwkc-0007OD-4k for emacs-orgmode@gnu.org; Thu, 06 Jun 2019 14:04:35 -0400 Received: from esa02.ucs.mun.ca ([134.153.136.22]:39498) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hYwkb-0007JA-SB for emacs-orgmode@gnu.org; Thu, 06 Jun 2019 14:04:34 -0400 In-reply-to: <877ea041ee.fsf@gmail.com> 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" To: numbchild@gmail.com Cc: emacs-orgmode@gnu.org Hello again, stardiviner writes: > Roger Mason writes: > >> Hello, >> >> I want to output the result of the evaluation of a (python) source block >> to a (graphics) file and have a link to the file inserted in the buffer. > > For this, you should try updated header arguments like ":results graphics link" > or ":results file link". I updated to Org mode version 9.2.3 (release_9.2.3-390-gfb5091 @ /home/rmason/.emacs.d/org-git/lisp/) This works but sets the results to verbatim, hence the exported & compiled code does not include the graphic. #+name: scaleplot03 #+begin_src python :results output graphics link :exports results :var data=test :var file="scaleplot03.pdf" import matplotlib.pyplot as plt import csv scale = [] lescale = [] cdscale = [] energy = [] leenergy = [] cdenergy = [] for row in data: scale.append(float(row[0])) energy.append(float(row[1])) if int(row[2]) != 0: lescale.append(float(row[0])) leenergy.append(float(row[1])) if int(row[3]) != 0: cdscale.append(float(row[0])) cdenergy.append(float(row[1])) plt.plot(scale,energy, 'r+') plt.plot(lescale,leenergy, 'go') plt.plot(cdscale,cdenergy, 'bo') plt.xlabel('scale') plt.ylabel('energy (Ha)') plt.title('Energy vs scale') plt.legend() plt.savefig(file) print ("./%s" % file) #+end_src #+RESULTS: scaleplot03 : ./scaleplot03.pdf This header does not work either: #+name: scaleplot04 #+begin_src python :results file link :exports results :var data=test :var file="scaleplot04.pdf" ( same pythone code here) #+RESULTS: scaleplot04 [[file:None]] ]] #+end_src Thank you for your help. Roger