Hi! May be it's of interest. There's an R package 'plotrix' which seems to be able to create gantt charts. Example picture: http://addictedtor.free.fr/graphiques/RGraphGallery.php?graph=74
Disclaimer: I don't know anything about gantt charts or that particular package. Hth Detlef On Tue, 13 Apr 2010 20:24:11 -0400 Dan Davison <davi...@stats.ox.ac.uk> wrote: > Erik Butz <erik.b...@googlemail.com> writes: > > > Hi Eric, > > > > thanks for this information, this already brings me one step further. > > > > There is now another issue which I run into, trying to get this to > > work: python lists seem to be a potential problem. In the code there > > are several lists which are constructed by a > > > > # Generate gnuplot lines > > plot_lines = ['plot ' + > > ', \\\n\t'.join((' '.join(['-1', > > 'title "%s"' % t, > > 'with lines', > > 'linecolor %s %s ' % > > (colorprefix, colors[t]), > > 'linewidth 6']) > > for t in tasks))] > > > > which cause the program to fail and not to produce any output when accessed. > > > > I can create lists with append('a') however and use them mostly w/o > > problems. > > > > Is there any know limitation somewhere in org-babel or am I running > > into some other problem here? > > (in principle this should just be run like in any normal shell, right?) > > Hi Erik, > > So have I understood this right that you're following Eric's model and > passing an org table into a shell block whch calls python? > I.e. something like > > #+begin_src sh :var tasks=tasks > echo "$tasks" | python gantt.py > #+end_src > > In that case it should be exactly the same as running the python code in > a shell outside emacs. To debug this, how about capturing the data > that's going into python with > > #+begin_src sh :var tasks=tasks > echo "$tasks" > input-data-for-python > #+end_src > > and then outside emacs doing the equivalent of > > python gantt.py < input-data-for-python > > Does that reveal the same problem? > > Dan > > > > > Again any hints appreciated > > > > Erik > > > > P.S. let me stress that the code works w/o problems from a normal > > shell, since otherwise this sounds more like a python question > > > > > > On Tue, Apr 13, 2010 at 8:51 PM, Eric Schulte <schulte.e...@gmail.com> > > wrote: > >> Erik Butz <erik.b...@googlemail.com> writes: > >> > >>> Hi all, > >>> > >>> I have been playing around with org-mode and have been thinking about > >>> the possibility to create gantt charts with org-mode. I did not find > >>> anything in the archives, and todays thread about taskjuggler brought > >>> me back to the subject. > >>> > >>> This is a python script hovering around the web (gantt.py) which > >>> enables gant charts with gnuplot. I played around with this a bit so > >>> as to have it accept ISO timestamps (%Y-%m-%dT%H:%M:%S) and or > >>> durations. Now I am looking for a way to execute this from within > >>> org-mode probably using org-babel > >>> > >>> The (bash) syntax would be something like > >>> > >>> python gantt.py -t "Title" -i input.txt | gnuplot -persist > >>> > >>> I would like to pass an org table to the script instead of the input > >>> file so the equivalent of doing > >>> > >>> cat input | python gantt.py -t "Title" | gnuplot -persist > >>> > >>> The input structure is (e.g.) > >>> > >>> Task 1 2010-4-2T12:00:00 1 validate > >>> Task 2 2010-4-5T12:00:00 5.25 something > >>> Task 3 2010-4-5T12:00:00 2010-4-10T0:00:00 otherthing > >>> Task 4 5.5 yet another thing > >>> which could well be the column mode representation of a file probably. > >>> > >> > >> something like the following in will allow you to pass a table to a > >> series of shell commands > >> > >> #+tblname: tasks > >> | Task 1 | 2010-4-2T12:00:00 | 1 | validate | > >> | Task 2 | 2010-4-5T12:00:00 | 5.25 | something | > >> | Task 3 | 2010-4-5T12:00:00 | 2010-4-10T0:00:00 | otherthing | > >> > >> #+begin_src sh :var tasks=tasks > >> echo "$tasks" |wc > >> #+end_src > >> > >> #+results: > >> : 3 15 130 > >> > >> you can also use a gnuplot block to accept the output of gantt.py, and > >> once everything is working it can be packaged up into a library of babel > >> [1] function which could then be called with a short line like. > >> > >> #+call: gantt(tasks=my-task-table) > >> > >> Hope that helps, let me know if you have any more questions. -- Eric > >> > >>> > >>> I am sorry should this be a bit vague. > >>> > >>> Please let me know if I can provide any more information to clarify the > >>> problem > >>> > >>> Cheers and thanks, > >>> > >>> Erik > >>> > >>> > >>> _______________________________________________ > >>> Emacs-orgmode mailing list > >>> Please use `Reply All' to send replies to the list. > >>> Emacs-orgmode@gnu.org > >>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode > >> > >> Footnotes: > >> [1] http://orgmode.org/worg/org-contrib/babel/library-of-babel.php > >> > >> > > > > > > _______________________________________________ > > Emacs-orgmode mailing list > > Please use `Reply All' to send replies to the list. > > Emacs-orgmode@gnu.org > > http://lists.gnu.org/mailman/listinfo/emacs-orgmode > > > _______________________________________________ > Emacs-orgmode mailing list > Please use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode > _______________________________________________ Emacs-orgmode mailing list Please use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode