emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orgmode] gnuplot with errorbars in org-mode


From: Eric Schulte
Subject: Re: [Orgmode] gnuplot with errorbars in org-mode
Date: Sun, 25 Jul 2010 08:48:21 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux)

Hi,

I think you're on the right path using Org-babel, here is an altered
version of your gnuplot code block which should work.

#+srcname: plot-data-w-err
#+begin_src gnuplot :var data=data-table :file example.png
  set title 'My plot'
  plot "$data" using 1:2:3:4:5:6 with xyerrorlines title 'Ordinate (Y)'
#+end_src

This assumes that you have named your table with a line like

#+tblname: data-table

Notice that the example above uses two "header arguments", the ":var"
header argument specifies that the data from data-table should be saved
into the variable named "data", and the :file header argument specifies
that gnuplot should save the resulting graph to a file named
"exmaple.png" and that a link to that graph should be inserted on
evaluation of the code block.  Please see the quick-guide and the manual
for more information on code block syntax and header arguments.

Best -- Eric

Quick Guide:Babel
http://orgmode.org/guide/Working-With-Source-Code.html#Working-With-Source-Code

Manual:Babel
http://orgmode.org/manual/Working-With-Source-Code.html#Working-With-Source-Code

Suvayu Ali <address@hidden> writes:

> Hi everyone,
>
> I am a new org-mode user and this is my first post to the mailing
> list. Lately I have been using org-mode to manage the data for a study
> I'm doing for my research project. I primarily use the spreadsheet
> features to do all the calculations and then use gnuplot to plot the
> final result. For all the basic plotting it works great, but I am
> having trouble when I want error bars in my plot.
>
> To demonstrate my point here is a small example.
>
>> #+PLOT: title:"My plot" ind:1 deps:(2) type:2d with:xyerrorlines
>> | Abscissa (X) | Ordinate (Y) | X low edge | X high edge | Y low edge | Y 
>> high edge |
>> |--------------+--------------+------------+-------------+------------+-------------|
>> |           60 |    1.1140741 |       0020 |        0100 |  1.1699508 |   
>> 1.0680423 |
>> |          150 |    1.1187818 |       0100 |        0200 |  1.1593492 |   
>> 1.0855438 |
>> |          350 |    1.1193459 |       0200 |        0500 |  1.1331885 |   
>> 1.1086636 |
>> |          600 |    1.1029173 |       0500 |        0700 |  1.0940769 |   
>> 1.1121185 |
>> |          850 |    1.0841388 |       0700 |        1000 |  1.0676310 |   
>> 1.1000886 |
>> |         1250 |    1.0358938 |       1000 |        1500 |  1.0127586 |   
>> 1.0586916 |
>> |         2000 |   0.89370079 |       1500 |        2500 | 0.88014981 |      
>>  0.925 |
>
> This gives me an error like this,
>
>> gnuplot> plot '/tmp/org-plot30213YHV' using 1:2 with xyerrorlines title 
>> 'Ordinate (Y)'
>>          Not enough columns for this style
>
> I have tried changing the "#+PLOT:" line to say this,
>
>> #+PLOT: title:"My plot" ind:1 deps:(2 3 4 5 6) type:2d with:xyerrorlines
>
> But that doesn't work either. I think the problem is org-plot doesn't
> recognise that when plotting with error bars, gnuplot expects more
> than two columns of data. So a command like this should be sent to
> gnuplot,
>
>> plot '/tmp/org-plot30213YHV' using 1:2:3:4:5:6 with xyerrorlines title 
>> 'Ordinate (Y)'
>
> In fact typing this on the gnuplot terminal actually generates the
> desired plot!
>
>
> So I thought maybe I should try org-babel. So I tried something like this,
>
>> #+srcname: plot-data-w-err
>> #+begin_src gnuplot
>>   set title 'My plot'
>>   plot 'data-table' using 1:2:3:4:5:6 with xyerrorlines title 'Ordinate (Y)'
>> #+end_src
>
> and gave my table a name like this,
>
> #+tblname: data-table
>
> But that didn't behave as I was expecting it to. I think I don't quite
> understand how to pass a table as an input to a source block.
>
> I was hoping someone on the list could either help me understand how
> babel uses tables as inputs, or pass the correct command to gnuplot
> with org-plot. BTW, org-mode is phenomenal. Loving every bit of
> it. Thank you Carsten /et al./ :)
>
> Specifics:
> Org-mode version 7.01
> GNU Emacs 23.2.1 (x86_64-redhat-linux-gnu, GTK+ Version 2.20.1) of
> 2010-05-13 on x86-07.phx2.fedoraproject.org
> gnuplot 4.4 patchlevel 0



reply via email to

[Prev in Thread] Current Thread [Next in Thread]