Hello again,
stardiviner <numbchild@gmail.com> writes:
> Roger Mason <rmason@mun.ca> 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