[BACK]Return to 0FAQ CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gnuplot

Diff for /OpenXM_contrib/gnuplot/Attic/0FAQ between version 1.1.1.1 and 1.1.1.3

version 1.1.1.1, 2000/01/09 17:00:48 version 1.1.1.3, 2003/09/15 07:09:21
Line 1 
Line 1 
 * Please note that this is not the current official FAQ since                                    Gnuplot FAQ
 * I have upgraded the info in answer 4.0 - dd  
 * Made more changes - lh  
   
 Archive-name: graphics/gnuplot-faq  Contents
 Version: Mon Sep 23 04:23:01 CES 1996  
 Posting-frequency: every 14 days  
 URL: http://www.uni-karlsruhe.de/~ig25/gnuplot-faq/  
   
    comp.graphics.apps.gnuplot    * 0 Meta - Questions
         + 0.1 Where do I get this document?
         + 0.2 Where do I send comments about this document?
   
     * 1 General Information
         + 1.1 What is gnuplot?
         + 1.2 How did it come about and why is it called gnuplot?
         + 1.3 Does gnuplot have anything to do with the FSF and the GNU project?
         + 1.4 What does gnuplot offer?
         + 1.5 Is gnuplot suitable for batch processing?
         + 1.6 Can I run gnuplot on my computer?
         + 1.7 Legalize it!
         + 1.8 Is gnuplot Y2K compliant?
         + 1.9 Where do I get further information?
   
     * 2 Setting it up
         + 2.1 What is the current version of gnuplot?
         + 2.2 Where can I get gnuplot?
         + 2.3 How do I get gnuplot to compile on my system?
         + 2.4 What documentation is there, and how do I get it?
   
     * 3 Working with it.
         + 3.1 How do I get help?
         + 3.2 How do I print out my graphs?
         + 3.3 How do I include my graphs in <word processor>?
         + 3.4 How do I post-process a gnuplot graph?
         + 3.5 How do I change symbol size, line thickness and the like?
         + 3.6 How do I generate plots in the GIF format?
         + 3.7 Can I animate my graphs?
         + 3.8 How do I plot implicit defined graphs?
   
     * 4 Wanted features
         + 4.1 What's new in gnuplot 3.7?
         + 4.2 Does gnuplot have hidden line removal?
         + 4.3 Does gnuplot support bar-charts/histograms/boxes?
         + 4.4 Does gnuplot support pie charts?
         + 4.5 Does gnuplot quarterly time charts?
         + 4.6 Does gnuplot support multiple y-axes on a single plot?
         + 4.7 Can I put multiple pages on one page?
         + 4.8 Can I put both data files and commands into a single file?
         + 4.9 Can I put Greek letters and super/subscripts into my labels?
         + 4.10 Can I do 1:1 scaling of axes?
         + 4.11 Can I put tic marks for x and y axes into 3d plots?
         + 4.12 Does gnuplot support a driver for <graphics format>?
         + 4.13 Can I put different text sizes into my plots?
         + 4.14 How do I modify gnuplot, and apply 'patches'?
         + 4.15 How do I skip data points?
         + 4.16 How do I plot every nth point?
         + 4.17 How do I plot a vertical line?
         + 4.18 How do I plot data files
         + 4.19 How do I include accentuated characters in Postscript output?
   
     * 5 Miscellaneous
         + 5.1 I've found a bug, what do I do?
         + 5.2 Can I use gnuplot routines for my own programs?
         + 5.3 What extensions have people made to gnuplot? Where can I get them?
         + 5.4 I need an integration, fft, iir-filter,....!
         + 5.5 Can I do heavy-duty data processing with gnuplot? or What is beyond
           gnuplot?
         + 5.6 I have ported gnuplot to another system, or patched it. What do I
           do?
         + 5.7 I want to help in developing the next version of gnuplot. What can
           I do?
         + 5.8 Open questions for inclusion into the FAQ?
   
     * 6 Making life easier
         + 6.1 How do I plot two functions in non-overlapping regions?
         + 6.2 How do I run my data through a filter before plotting?
         + 6.3 How do I make it easier to use gnuplot with LATEX?
         + 6.4 How do I save and restore my settings?
         + 6.5 How do I plot lines (not grids) using splot?
         + 6.6 How do I plot a function f(x,y) which is bounded by other functions
           in the x-y plain?
         + 6.7 How do I get rid of <feature> in a plot?
         + 6.8 How do I call gnuplot from my own programs?
         + 6.9 What if I need h-bar (Planck's constant)?
   
     * 7 Known Problems
         + 7.1 Gnuplot is not plotting any points under X11! How come?
         + 7.2 My isoline data generated by a Fortran program is not handled
           correctly. What can I do?
         + 7.3 Why does gnuplot ignore my very small numbers?
         + 7.4 Gnuplot is plotting nothing when run via gnuplot <filename>! What
           can I do?
         + 7.5 My formulas are giving me nonsense results! What's going on?
         + 7.6 Set output 'filename' isn't outputting everything it should!
         + 7.7 When using the LATEX-terminal, there is an error during the
           LATEX-run!
         + 7.8 The exit command does not work as documented!
         + 7.9 I can't find the demos and example files at the URLs in the
           documentation!
         + 7.10 Calling gnuplot in a pipe or with a gnuplot-script doesn't produce
           a plot!
   
     * 8 Credits
   
         comp.graphics.apps.gnuplot FAQ (Frequent Answered Questions)  0 Meta - Questions
   
    This is the FAQ (Frequently Answered Questions) list of the  0.1 Where do I get this document?
    comp.graphics.apps.gnuplot newsgroup, which discusses the gnuplot  
    program for plotting 2D - and 3D - graphs.  
   
    Most of the information in this document came from public discussion  This document is posted about once every two weeks to the newsgroups  ~
    on comp.graphics.apps.gnuplot; quotations are believed to be in the  comp.graphics.apps.gnuplot. Its newest (plaintext) version is available via
    public domain.  anonymous ftp from ftp.gnuplot.info in /pub/gnuplot/faq/gnuplot-faq.txt.
   
    If you are reading this via WWW, and you can't access the individual  If you have access to the WWW, you can get the newest version of this document
    pages, please select here, then try again.  from http://www.ucc.ie/gnuplot/gnuplot-faq.html.
   
    Here's a list of the questions. If you are looking for the answer for  Today's version is version $Revision$, dated  2002/12/07 18:33:
    a specific question, look for the string Qx.x: at the beginning of a  30 $
    line, with x.x being the question number. Sections in this FAQ are  
      * 0. Meta-Questions  
      * 1. General Information  
      * 2. Setting it up  
      * 3. Working with it  
      * 4. Wanted features  
      * 5. Miscellaneous  
      * 6. Making life easier  
      * 7. Known problems  
      * 8. Credits  
   
   0.2 Where do I send comments about this document?
   
 Questions:  Send comments, suggestions etc via email to the developer mailing list
   info-gnuplot-beta@Dartmouth.EDU.
   
   Section 0: Meta - Questions  1 General Information
   
      * Q0.1: Where do I get this document?  1.1 What is gnuplot?
      * Q0.2: Where do I send comments about this document?  
   
   Section 1: General Information  gnuplot is a command-driven interactive function plotting program. It can be
   used to plot functions and data points in both two- and three-dimensional plots
   in many different formats, and will accommodate many of the needs of today's
   scientists for graphic data representation. gnuplot is copyrighted, but freely
   distributable; you don't have to pay for it.
   
      * Q1.1: What is gnuplot?  This document deals with gnuplot Version 3.7 which is the latest official
      * Q1.2: How did it come about and why is it called gnuplot?  release as of December 10, 2002. References to bug-fix versions or (recent)
      * Q1.3: Does gnuplot have anything to do with the FSF and the  beta versions are explicitly marked.
        GNU project?  
      * Q1.4: What does gnuplot offer?  
      * Q1.5: Is gnuplot suitable for batch processing?  
      * Q1.6: Can I run gnuplot on my computer?  
   
   Section 2: Setting it up  1.2 How did it come about and why is it called gnuplot?
   
      * Q2.1: What is the current version of gnuplot?  The authors of gnuplot are: Thomas Williams, Colin Kelley, Russell Lang, Dave
      * Q2.2: Where can I get gnuplot?  Kotz, John Campbell, Gershon Elber, Alexander Woo and many others.
      * Q2.3: How do I get gnuplot to compile on my system?  
      * Q2.4: What documentation is there, and how do I get it?  
   
   Section 3: Working with it  The following quote comes from Thomas Williams:
   
      * Q3.1: How do I get help?      I was taking a differential equation class and Colin was taking
      * Q3.2: How do I print out my graphs?      Electromagnetics, we both thought it'd be helpful to visualize the
      * Q3.3: How do I include my graphs in <word processor>?      mathematics behind them. We were both working as sys admin for an EE VLSI
      * Q3.4: How do I post-process a gnuplot graph?      lab, so we had the graphics terminals and the time to do some coding. The
      * Q3.5: How do I change symbol size, line thickness and the      posting was better received than we expected, and prompted us to add some,
        like?      albeit lame, support for file data.
      * Q3.6: How do I generate plots in GIF format?  
   
   Section 4: Wanted features      Any reference to GNUplot is incorrect. The real name of the program is
       "gnuplot". You see people use "gnuplot" quite a bit because many of us have
       an aversion to starting a sentence with a lower case letter, even in the
       case of proper nouns and titles. gnuplot is not related to the GNU project
       or the FSF in any but the most peripheral sense. Our software was designed
       completely independently and the name "gnuplot" was actually a compromise.
       I wanted to call it "llamaplot" and Colin wanted to call it "nplot." We
       agreed that "newplot" was acceptable but, we then discovered that there was
       an absolutely ghastly pascal program of that name that the Computer Science
       Dept. occasionally used. I decided that "gnuplot" would make a nice pun and
       after a fashion Colin agreed.
   
      * Q4.0: What's new in gnuplot 3.7?  1.3 Does gnuplot have anything to do with the FSF and the GNU project?
      * Q4.1: Does gnuplot have hidden line removal?  
      * Q4.2: Does gnuplot support bar-charts/histograms/boxes?  
      * Q4.3: Does gnuplot support multiple y-axes on a single plot?  
      * Q4.4: Can I put multiple plots on a single page?  
      * Q4.5: Can I put both data files and commands into a single  
        file?  
      * Q4.6: Can I put Greek letters and super/subscripts into my  
        labels?  
      * Q4.7 Can I do 1:1 scaling of axes?  
      * Q4.8: Can I put tic marks for x and y axes into 3d plots?  
      * Q4.9: Does gnuplot support a driver for <graphics format>?  
      * Q4.10: Can I put different text sizes into my plots?  
      * Q4.11: How do I modify gnuplot?  
      * Q4.12: How do I skip data points?  
   
   Section 5: Miscellaneous  Gnuplot is neither written nor maintained by the FSF. It is not covered by the
   General Public License, either. It used to be distributed by the FSF, however,
   due to licensing issues it is no longer.
   
      * Q5.1: I've found a bug, what do I do?  Gnuplot is freeware in the sense that you don't have to pay for it. However it
      * Q5.2: Can I use gnuplot routines for my own programs?  is not freeware in the sense that you would be allowed to distribute a modified
      * Q5.3: What extensions have people made to gnuplot? Where can I  version of your gnuplot freely. Please read and accept the Copyright file in
        get them?  your distribution.
      * Q5.4: Can I do heavy-duty data processing with gnuplot?  
      * Q5.5: I have ported gnuplot to another system, or patched it.  
        What do I do?  
      * Q5.6: I want to help in developing gnuplot 3.7. What can I do?  
   
   Section 6: Making life easier  1.4 What does gnuplot offer?
   
      * Q6.1: How do I plot two functions in non-overlapping regions?    * Plotting of two-dimensional functions and data points in many different
      * Q6.2: How do I run my data through a filter before plotting?      styles (points, lines, error bars)
      * Q6.3: How do I make it easier to use gnuplot with LaTeX?    * computations in integer, float and complex arithmetic
      * Q6.4: How do I save and restore my settings?    * plotting of three-dimensional data points and surfaces in many different
      * Q6.5: How do I plot lines (not grids) using splot?      styles (contour plot, mesh).
      * Q6.6: How do I plot a function f(x,y) which is bounded by    * support for complex arithmetic
        other functions in the x-y plain?    * self - defined functions
      * Q6.7: How do I get rid of <feature in a plot>?    * support for a large number of operating systems, graphics file formats and
      * Q6.8: How do I call gnuplot from my own programs ?      devices
     * extensive on-line help
     * labels for title, axes, data points
     * command line editing and history on most platforms
   
   Section 7: Known Problems  1.5 Is gnuplot suitable for batch processing?
   
      * Q7.1: Gnuplot is not plotting any points under X11! How come?  Yes. You can read in files from the command line, or you can redirect your
      * Q7.2: My isoline data generated by a Fortran program is not  standard input to read from a file. Both data and command files can be
        handled correctly. What can I do?  generated automatically, from data acquisition programs or whatever else you
      * Q7.3: Why does gnuplot ignore my very small numbers?  use.
      * Q7.4: Gnuplot is plotting nothing when run via gnuplot  
        <filename>! What can I do?  
      * Q7.5: My formulas are giving me nonsense results! What's going  
        on?  
      * Q7.6: My Linux gnuplot complains about a missing gnuplot_x11.  
        What is wrong?  
      * Q7.7: set output 'filename' isn't outputting everything it  
        should!  
   
   Section 8: Credits  1.6 Can I run gnuplot on my computer?
   
   Section 0: Meta-Questions.  Gnuplot is available for a number of platforms. These are: Unix (X11 and
   NeXTSTEP), VAX/VMS, OS/2, MS-DOS, Amiga, MS-Windows, OS-9/68k, Atari ST, BeOS,
   and the Macintosh.
   
    Q0.1: Where do I get this document?  Please notify the FAQ-maintainer of any further ports you might be aware of.
           This document is posted about once every two weeks to the  
           newsgroups comp.graphics.apps.gnuplot, comp.answers and  
           news.answers. Like many other FAQ's, its newest (plaintext)  
           version is available via anonymous ftp from  
           ftp://rtfm.mit.edu/pub/usenet/news.answers/graphics/gnuplot  
           -faq.  
   
           If you have access to the WWW, you can get the newest version  You should be able to compile the gnuplot source more or less out of the box on
           of this document from  any reasonable standard (ANSI/ISO C, POSIX) environment.
           http://www.uni-karlsruhe.de/~ig25/gnuplot-faq/  
   
    Q0.2: Where do I send comments about this document?  1.7 Legalize it!
           Send comments, suggestions etc. via e-mail to Thomas  
           Koenig, Thomas.Koenig@ciw.uni-karlsruhe.de or  
           ig25@dkauni2.bitnet.  
   
   Gnuplot is freeware authored by a collection of volunteers, who cannot make any
   legal statement about the compliance or non-compliance of gnuplot or its uses.
   There is also no warranty whatsoever. Use at your own risk.
   
   Section 1: General Information  Citing from the README of a mathematical subroutine package by R. Freund:
   
    Q1.1: What is gnuplot?      For all intent and purpose, any description of what the codes are doing
           Gnuplot is a command-driven interactive function plotting      should be construed as being a note of what we thought the codes did on our
           program. It can be used to plot functions and data points in      machine on a particular Tuesday of last year. If you're really lucky, they
           both two- and three- dimensional plots in many different      might do the same for you someday. Then again, do you really feel *that*
           formats, and will accommodate many of the needs of today's      lucky?
           scientists for graphic data representation. Gnuplot is  
           copyrighted, but freely distributable; you don't have to pay  
           for it.  
   
    Q1.2: How did it come about and why is it called gnuplot?  1.8 Is gnuplot Y2K compliant?
           The authors of gnuplot are:  
   
           Thomas Williams, Colin Kelley, Russell Lang, Dave Kotz, John  Gnuplot's compliance depends in part on the compliance of the underlying
           Campbell, Gershon Elber, Alexander Woo and many others.  operating system and hardware. The only use gnuplot makes of a system- supplied
   date is in the "set timestamp" command, which simply echos the date on the
   plot. If the underlying OS cannot produce an accurate time string, then the
   "set timestamp" command may fail to print the correct date on plots.
   
           The following quote comes from Thomas Williams:  In gnuplot 3.5, if the user chooses to use %y in a timestamp format, rather
   than %Y, it will print 2-digit rather than 4-digit years. The effects depend on
   the importance you place on the timestamps printed on plots.
   
      I was taking a differential equation class and Colin was taking  Gnuplot 3.7 also allows the use of time/date data as variables, but the user
      Electromagnetics, we both thought it'd be helpful to visualize the  has complete control over the input format of the data and the output format of
      mathematics behind them. We were both working as sys admin for an  the tic labels - the same 2-digit "%y" (interpreted as 1900+) and 4-digit "%Y"
      EE VLSI lab, so we had the graphics terminals and the time to do  formats are both available. But again, these are user-specifiable, so if there
      some coding. The posting was better received than we expected, and  is a Y2K problem here, it is the responsibility of the user.
      prompted us to add some, albeit lame, support for file data.  
   
      Any reference to GNUplot is incorrect. The real name of the program  Of course, gnuplot is built by executing a makefile, which may well be
      is "gnuplot". You see people use "Gnuplot" quite a bit because many  date-dependent. So if the operating system has a Y2K problem, the process of
      of us have an aversion to starting a sentence with a lower case  building a new executable of gnuplot may be affected. But that wouldn't be a
      letter, even in the case of proper nouns and titles. Gnuplot is not  problem with gnuplot per se.
      related to the GNU project or the FSF in any but the most  
      peripheral sense. Our software was designed completely  
      independently and the name "gnuplot" was actually a compromise. I  
      wanted to call it "llamaplot" and Colin wanted to call it "nplot."  
      We agreed that "newplot" was acceptable but, we then discovered  
      that there was an absolutely ghastly pascal program of that name  
      that the Computer Science Dept. occasionally used. I decided that  
      "gnuplot" would make a nice pun and after a fashion Colin agreed.  
   
    Q1.3: Does gnuplot have anything to do with the FSF and the GNU  IMPORTANT NOTICE
           project?  
           Gnuplot is neither written nor maintained by the FSF. It is not  
           covered by the General Public License, either.  
   
           However, the FSF has decided to distribute gnuplot as part of  As of gnuplot beta version 3.7.0.9, the interpretation of the "%y" two digit
           the GNU system, because it is useful, redistributable software.  year specifier was changed in accordance with the recommendations of The Open
   Group and all major Unix vendors. When a century is not otherwise specified,
   values in the range 69-99 refer to the twentieth century and values in the
   range 00-68 refer to the twenty-first century. Be very careful when
   interpreting 2-digit year expressions.
   
    Q1.4: What does gnuplot offer?  1.9 Where do I get further information?
   
           + Plotting of two-dimensional functions and data points in many  The following sites have more information about gnuplot.
             different styles (points, lines, error bars)  
           + plotting of three-dimensional data points and surfaces in  
             many different styles (contour plot, mesh).  
           + support for complex arithmetic  
           + self - defined functions  
           + support for a large number of operating systems, graphics  
             file formats and devices  
           + extensive on-line help  
           + labels for title, axes, data points  
           + command line editing and history on most platforms  
   
    Q1.5: Is gnuplot suitable for batch processing?    * http://www.comnets.rwth-aachen.de/doc/gnu/gnuplot37/gnuplot.html an online
           Yes. You can read in files from the command line, or you can      documentation in html-format
           redirect your standard input to read from a file. Both data and    * http://www.usf.uni-osnabrueck.de/ breiter/tools/gnuplot/index.en.html has
           command files can be generated automatically, from data      many links to many features and add-ons for gnuplot
           acquisition programs or whatever else you use.    * http://web.cs.uni.edu/Help/gnuplot/ contains an online tutorial
     * http://brian.me.tufts.edu/GnuplotInLaTeX/ contains infos abount gnuplot and
       LATEX
     * http://ndevilla.free.fr/gnuplot/ explains the use of a gnuplot API in ANSI
       C (commonly known as gnuplot_pipes
     * http://ricardo.ecn.wfu.edu/ cottrell/qplot/ on how to plot quarterly time
       data
     * http://monsoon.harvard.edu/ mhagger/download a Python interface for gnuplot
     * ftp.thewrittenword.com in /free/by-package/ contains Solaris, IRIX, HP-UX
       and Digital Unix binaries
     * http://www.sci.muni.cz/ mikulik/gnuplot.html has Petr's famous OS/2 mouse
       support and the pm3d terminal for colour 3d surfaces. Furthermore some more
       links to other sites
   
    Q1.6: Can I run gnuplot on my computer?  Some documentation is available in other languages than English. Those include:
           Gnuplot is available for a number of platforms. These are: Unix  
           (X11 and NeXTSTEP), VAX/VMS, OS/2, MS-DOS, Amiga, MS-Windows,  
           OS-9/68k, Atari ST and the Macintosh. Modifications for NEC  
           PC-9801 are said to exist (where?).  
   
     * http://www.multimania.com/ gersoo/gnuplt/index.html contient des
       informations dans la langue de Molière: les 1ers pas avec gnuplot,
       malheureusement seulement version 3.5. Vous trouverez un cours directement
       en ligne appelleé "1ers pas avec gnuplot". Le cours est aussi disponible en
       Postscript.
     * http://www.al.lu/euler/gnuplot.shtml encore des informations en langue
       française avec possibilité de téléchargement des versions binaires
   
   Section 2: Setting it up  Here are some more sites, however these are somewhat outdated in carrying still
   references to beta versions. If you download software from there you should be
   aware that beta versions are not officially endorsed.
   
    Q2.1: What is the current version of gnuplot?    * http://www.cs.dartmouth.edu/gnuplot_info.html slightly outdated site for
           The current version of gnuplot is 3.7, which has many      the 3.6 beta version, but also a web-gateway to the users' newsgroup
           improvements over 3.5    * http://members.theglobe.com/gnuplot/ basically same as above.
     * http://homepage.mac.com/gnuplot/ is the new site for a Macintosh port of
       gnuplot
   
    Q2.2: Where can I get gnuplot?  The following sites were said to exist, however they seem to be down right now.
           All of the later addresses refer to ftp sites. Please note that  
           it is preferable for you to use the symbolic name, rather than  
           the IP address given in brackets, because that address is much  
           more subject to change.  
   
           The official distribution site for the gnuplot source is    * http://www.geocities.com/SiliconValley/Foothills/6647/ the copyright
           ftp.dartmouth.edu [129.170.16.4, soon to be 129.170.8.11],      statement and some binaries contains ads
           the file is called /pub/gnuplot/gnuplot-3.7.tar.Z. Official    * http://www.delorie.com/gnu/docs/gnuplot/gplot_toc.html doesn't work
           mirrors of that distribution are (for Australia)    * picard.tamu.edu in /pub/gnuplot gives a tutorial
           ftp.monash.edu.au [130.194.11.18] and (for Europe)    * http://feff.phys.washington.edu/ ravel/gnuplot has a new mode for the users
           ftp.irisa.fr [131.254.254.10]. You can also get it from your      of (X)Emacs
           friendly neighbourhood comp.sources.misc archive.  
   
           MS-DOS and MS-Windows binaries are available from  2 Setting it up
   
           + oak.oakland.edu (North America) [141.210.10.117] as  2.1 What is the current version of gnuplot?
             /Simtel/msdos/plot/gpt35*.zip,  
           + garbo.uwasa.fi (Europe) [193.166.120.5] as  
             /pc/plot/gpt35*.zip and  
           + archie.au (Australia) [139.130.4.6] as  
             micros/pc/oak/plot/gpt35*.zip.  
   
           The files are: gpt35doc.zip, gpt35exe.zip, gpt35src.zip and  The current version of gnuplot is 3.7, which has many improvements over 3.5.
           gpt35win.zip.  3.6 was never released to avoid confusions with the beta versions.
   
           There is a special MS-DOS version for 386 or better processors;  
           it is available from the official gnuplot sites as DOS34.zip.  
   
           OS/2 2.x binaries are at ftp-os2.nmsu.edu [128.123.35.151],  2.2 Where can I get gnuplot?
           in /os2/2.x/unix/gnuplt35.zip.  
   
           Amiga sources and binaries are available from ftp.wustl.edu  The best place is definitly http://www.gnuplot.info. From there you find
           [128.252.135.4] as /pub/aminet/util/gnu/gnuplot-3.5.lha; there  various pointers to other sites.
           are numerous mirrors of this distribution, for example  
           ftp.uni-kl.de, oes.orst.edu or ftp.luth.se.  
   
           The NeXTSTEP front end can be found at  The source distribution ("gnuplot-3.7.tar.gz" or a similar name) is available
           ftp://next-ftp.peak.org/pub/next/binaries/plotting/ as  from the official distribution site and its mirrors.
           Gnuplot1.2_bin.tar.Z.  
   
           A version for OS-9/68K can be found at cabrales.cs.wisc.edu  The main server is ftp.gnuplot.info in /pub/gnuplot/. This server is mirrored
           [128.105.36.20] as /pub/OSK/GRAPHICS/gnuplot32x.tar.Z; it  by several others, among those are
           includes both X-Windows and non - X-windows versions.  
   
           There is a version for the Macintosh at    * mirror.aarnet.edu.au in /pub/gnuplot/
           ftp://ftp.ee.gatech.edu/pub/mac/gnuplot/ which includes    * ftp.dartmouth.edu in /pub/gnuplot/
           binaries for 68000-based Macs with and without FPU and native    * ftp.irisa.fr in /pub/gnuplot/
           support for PowerMacs.    * ftp.gnuplot.vt.edu in /pub/gnuplot/
   
           Versions for the Atari ST and TT, which include some GEM  You can also have a look at the following WWW-pages which provide a source to
           windowing support, are available from  obtain gnuplot:
           ftp://ftp.uni-kl.de/pub/atari/graphics/, as gplt35st.zip  
           and gplt35tt.zip. They work best under MiNT.  
   
           Executable files, plus documentation in Japanese, exist for the    * http://members.theglobe.com/gnuplot/
           X680x0 on    * http://www.geocities.com/SiliconValley/Foothills/6647/
           ftp://ftp.csis.oita-u.ac.jp/pub/x68k/fj.binaries.x68000/vol    * http://mirror.aarnet.edu.au/pub/gnuplot/
           2.  
   
           People without ftp access can use an ftp-mail server; send a  The current version for the Macintosh is 2.04b, based on gnuplot 3.5
           message saying 'help' to bitftp@pucc.bitnet (for BITNET only)  pre3.6beta338, and is available from
           or to ftpmail@ftp.dartmouth.edu.  
   
           For a uuencoded copy of the the gnuplot sources (compressed tar    * http://users.ece.gatech.edu/ schooley/.
           file), send this as the body of a message to  
           ftpmail@ftp.dartmouth.edu:  
   
   Unfortunately, this version does not seem to be maintained anymore.
   
         open  Source and binary distributions for the Amiga are available on Aminet
         cd pub/gnuplot  ftp.wustl.edu in  aminet/ and its mirrors, for example ftp.uni-kl.de,
         mode binary  oes.orst.edu or ftp.luth.se.
         get gnuplot3.5.tar.Z  
         quit  
   
    If you have some problem, you might need to stick  MS-DOS and MS-Windows binaries are available from the above servers and are
   called gp37dos.zip, gp37dj.zip, gp37w16.zip, gp37mgw.zip, gnuplot3.7cyg.zip.
   
         reply-to  <your-email-address-here>  OS/2 binaries are called gp37os2.zip.
   
    before all the above.  An X11 Window System front-end is available at http://www.flash.net/ dmishee/
   xgfe/xgfe.html.
   
           It is a good idea to look for a nearby ftp site when  The NeXTSTEP front end can be found at next-ftp.peak.org in /pub/next/binaries/
           downloading things. You can use archie for this. See if an  plotting/Gnuplot1.2_bin.tar.Z.
           archie client is installed at your system (by simply typing  
           archie at the command prompt), or send mail to archie@sura.net  
           with the word 'help' in both the subject line and the body of  
           the mail. However, be aware that the version you find at a near  
           ftp site may well be out of date; check the last modification  
           date and the number of bytes against the newest release at one  
           of the official servers.  
   
    Q2.3: How do I get gnuplot to compile on my system?  A version for OS-9/68K can be found at cabrales.cs.wisc.edu in /pub/OSK/
           As you would any other installation. Read the files README and  GRAPHICS/gnuplot32x.tar.Z; it includes both an X-Window Systems and a non -
           README.Install, edit the Makefile according to taste, and run  X-Window Systems version.
           make or whatever is suitable for your operating system.  
   
           If you get a complaint about a missing file libplot.a or  Versions for the Atari ST and TT, which include some GEM windowing support, are
           something similar when building gnuplot for X11, remove  available from ftp.uni-kl.de in /pub/atari/graphics/, as gplt35st.zip and
           -DUNIXPLOT from the TERMFLAGS= line, remove -lplot from the  gplt35tt.zip. They work best under MiNT.
           DTBS= line and run again. If you are making X11 on a sun, type  
           'make x11_sun'.  
   
           For compiling gnuplot under Irix 5.2 and Irix 5.3, there is a  Executable files, plus documentation in Japanese, exist for the X680x0 on
           patch in the file lvs.zip in the contrib directory at  ftp.csis.oita-u.ac.jp in /pub/x68k/fj.binaries.x68000/vol2.
           ftp.dartmouth.edu.  
   
    Q2.4: What documentation is there, and how do I get it?  It is a good idea to look for a nearby ftp site when downloading things. You
           The documentation is included in the source distribution. Look  can use archie for this. See if an archie client is installed at your system
           at the docs subdirectory, where you'll find  (by simply typing archie at the command prompt), or send mail to
   archie@sura.net with the word 'help' in both the subject line and the body of
   the mail. However, be aware that the version you find at a near ftp site may
   well be out of date; check the last modification date and the number of bytes
   against the newest release at one of the official servers.
   
           + a Unix man page, which says how to start gnuplot  If you can't locate a working archie server, you can use other web-based search
           + a help file, which also can be printed as a manual  engines for searching for gnuplot. One of these would be Lycos at http://
           + a tutorial on using gnuplot with LaTeX  ftpsearch.lycos.com/.
           + a quick reference summary sheet for TeX only  
   
           PostScript copies of the documentation can be ftp'd from  As of June 1999, the gnuplot distribution is also mirrored at the Comprehensive
           ftp.dartmouth.edu, in pub/gnuplot, as manual.ps.Z and  TeX Archive Network (CTAN) in the graphics/gnuplot directory. See
           tutorial.ps.Z  
   
           Andy Liaw and Dick Crawford have written a 16-page user's    * http://www.ctan.org/.
           guide. It is available from  
           ftp://picard.tamu.edu/pub/gnuplot/ as gptug.tex (also get  
           example.tex from the same directory), gptug.dvi or gptug.ps.  
   
           At the same site, there's a two- page instruction sheet for the  Bug fixes can also be found at gnuplot distribution sites in the patches
           enhpost PostScript driver (see Q4.6 ) as enhpost.guide.ps  directory.
           and a short guide to gnuplot PostScript files, as gp-ps.doc.  
   
           A Chinese translation of the gnuplot manual can be found on  2.3 How do I get gnuplot to compile on my system?
           ftp://servers.nctu.edu.tw/misc/environment/NCTU_EV/classnot  
           e/gnuplot.ps.gz .  
   
           There is a WWW hompepage for gnuplot at  As you would any other installation. Read the files README.1ST and README.
           http://www.cs.dartmouth.edu/gnuplot_info.html, which  
           includes the reference manual and a demo.  
   
           There are two more Chinese documents about gnuplot: a 72 - page  For Unix, use configure and make. For DOS, if you are using bash and DJGPP, you
           User's guide  can just run djconfig.sh. For other platforms, copy the relevant makefile from
           ftp://phi.sinica.edu.tw/pub/aspac/doc/94/94002.ps.gz and a  config/ to src, change to src and run make.
           28 - page Touring Guide  
           ftp://phi.sinica.edu.tw/pub/aspac/doc/95/95006.ps.gz. Both  
           documents are in PostScript format and gzipped.  
   
   2.4 What documentation is there, and how do I get it?
   
   Section 3: Working with it  The documentation is included in the source distribution. Look at the docs
   subdirectory, where you'll find
   
    Q3.1: How do I get help?    * a Unix man page, which says how to start gnuplot
           Give the 'help' command at the initial prompt. After that, keep    * a help file, which also can be printed as a manual
           looking through the keywords. Good starting points are 'plot'    * a tutorial on using gnuplot with LATEX
           and 'set'.    * a quick reference summary sheet for TEXonly
   
           Read the manual, if you have it.  PostScript copies of the documentation can be ftp'd from ftp.dartmouth.edu in /
   pub/gnuplot, as manual.ps.Z and tutorial.ps.Z
   
           Look through the demo subdirectory; it should give you some  The documentation is built during the installation if you have LATEX installed
           ideas.  on your system, look in the directories docs and tutorial.
   
           Ask your colleagues, the system administrator or the person who  Documentation about gnuplot is available in the most common formats at the
           set up gnuplot.  gnuplot distribution sites in the files gpdoc.zip and gpdoc2.zip.
   
           Post a question to comp.graphics.apps.gnuplot or send mail  3 Working with it.
           to the gatewayed mailing list info-gnuplot@dartmouth.edu. If  
           you want to subscribe to the mailing list, send a mail to  
           majordomo@dartmouth.edu with the body of the message being  
           'subscribe info-gnuplot'. Please don't do this if you can get  
           comp.graphics.apps.gnuplot directly. If you pose a  
           question there, it is considered good form to solicit e-mail  
           replies and post a summary.  
   
    Q3.2: How do I print out my graphs?  3.1 How do I get help?
           The kind of output produced is determined by the 'set terminal'  
           command; for example, 'set terminal postscript' will produce  
           the graph in PostScript format. Output can be redirected using  
           the 'set output' command.  
   
           As an example, the following prints out a graph of sin(x) on a  Read this document.
           Unix machine running the X Window system.  
   
   Give the 'help' command at the initial prompt. After that, keep looking through
   the keywords. Good starting points are 'plot' and 'set'.
   
         gnuplot> plot [-6:6] sin(x)  Read the manual, if you have it.
         gnuplot> set terminal postscript  
         Terminal type set to 'postscript'  
         Options are 'landscape monochrome "Courier" 14'  
         gnuplot> set output "sin.ps"  
         gnuplot> replot  
         gnuplot> set output              # set output back to default  
         gnuplot> set terminal x11        # ditto for terminal type  
         gnuplot> ! lp -ops sin.ps        # print PS File (site dependent)  
         request id is lprint-3433 (standard input)  
         lp: printed file sin.ps on fg20.rz.uni-karlsruhe.de (5068 Byte)  
         !  
         gnuplot>  
   
    Q3.3: How do I include my graphs in <word processor>?  Look through the demo subdirectory; it should give you some ideas.
           Basically, you save your plot to a file in a format your word  
           processor can understand (using "set term" and "set output",  
           see above), and then you read in the plot from your word  
           processor.  
   
           Details depend on the kind of word processor you use; use "set  Ask your colleagues, the system administrator or the person who set up gnuplot.
           term" to get a list of available file formats.  
   
           Many word processors can use Encapsulated PostScript for  If all these fail, please upgrade to the newest version of gnuplot or urge your
           graphs. This can be generated by the "set terminal postscript  system-administrator to do so. Then post a question to ~
           eps" command. Most MS-DOS word processors understand HPGL  comp.graphics.apps.gnuplot or send mail to the gatewayed mailing list
           (terminal type hpgl).  info-gnuplot@dartmouth.edu. Do not forget to cite the version number and the
   operating system. If you want to subscribe to the mailing list, send a mail to
   majordomo@dartmouth.edu with the body of the message being 'subscribe
   info-gnuplot'. Please don't do this if you can get  ~comp.graphics.apps.gnuplot
   directly. If you post a question there, it is considered good form to solicit
   e-mail replies and post a summary.
   
           With TeX, it depends on what you use to print your dvi files.  3.2 How do I print out my graphs?
           If you use dvips or dvi2ps, you can use Encapsulated  
           PostScript. For emTeX (popular for MS-DOS), you can use emTeX,  
           otherwise use the LaTeX terminal type, which generates a  
           picture environment.  
   
           If nothing else helps, try using the pgm or ppm format and  The kind of output produced is determined by the 'set terminal' command; for
           converting it to a bitmap format your favourite word processor  example, 'set terminal postscript' will produce the graph in PostScript format.
           can understand. An invaluable tool for this is Jef Poskanzer's  Output can be redirected using the 'set output' command.
           PBMPLUS package.  
   
           The PBMPLUS package is available in the contrib distribution  As an example, the following prints out a graph of sin(x) on a Unix machine
           for the X Window System. The original site for this is  running the X-Window System.
           ftp://ftp.x.org/contrib/. There are many mirrors, e.g.  
           ftp://ftp.th-darmstadt.de/pub/X11/contrib/ or .  
           ftp://sunsite.unc.edu/pub/X11/contrib/.  
   
           The most recent release of pbm by the author is dated December  gnuplot> plot [-6:6] sin(x)
           91 and is called pbmplus10dec91.tar.Z  gnuplot> set terminal postscript
   Terminal type set to 'postscript'
   Options are 'landscape monochrome "Courier" 14'
   gnuplot> set output "sin.ps"
   gnuplot> replot
   gnuplot> set output              # set output back to default
   gnuplot> set terminal x11        # ditto for terminal type
   gnuplot> ! lp -ops sin.ps        # print PS File (site dependent)
   request id is lprint-3433 (standard input)
   lp: printed file sin.ps on fg20.rz.uni-karlsruhe.de (5068 Byte)
   !
   gnuplot>
   
           There is new version including lots of patches from the net  In Microschrott Windows you click in the upper left corner of the graph window
           that is not maintained by the author called netpbm, with the  and print directly from there.
           newest version called netpbm-7dec1993.tar.gz.  
   
           Check archie (see Q2.2 ) for an archive site near you.  3.3 How do I include my graphs in <word processor>?
   
    Q3.4: How do I post-process a gnuplot graph?  Basically, you save your plot to a file in a format your word processor can
           This depends on the terminal type you use.  understand (using "set term" and "set output", see above), and then you read in
   the plot from your word processor. Vector formats should be preferred, as you
   can scale your graph later to the right size.
   
           You can use the terminal type fig (you may need to recompile  Details depend on the kind of word processor you use; use "set term" to get a
           gnuplot to enable this terminal type, by putting #define FIG  list of available file formats.
           into <term.h>), and use the xfig drawing program to edit the  
           plot afterwards.  
   
           For PostScript output, you may be able to use the pstotgif  Many word processors can use Encapsulated PostScript for graphs. This can be
           script (which calls GhostScript) to convert PostScript into the  generated by the "set terminal postscript eps" command. Most MS-DOS word
           format of the tgif drawing program. Tgif is also able to save  processors understand HPGL (terminal type hpgl).
           in PostScript format.  
   
           Both tgif and xfig can be obtained from the X Window contrib  With TeX, it depends on what you use to print your dvi files. If you use dvips
           distribution (see Q3.3).  or dvi2ps, you can use Encapsulated PostScript. For emTeX (popular for MS-DOSns
   OS/2), you can use emTeX, otherwise use the LATEX terminal type, which
   generates a picture environment.
   
           Another possibility for modifying PostScript output appears to  If nothing else helps, try using the pgm or ppm format and converting it to a
           be IslandDraw, a commercial drawing program for UNIX  bitmap format your favourite word processor can understand. An invaluable tool
           workstations.  for this is Jef Poskanzer's PBMPLUS package.
   
           For Windows, there is another alternative, PageDraw. It can  The PBMPLUS package is available in the contrib distribution for the X-Window
           post-process AI (Adobe Illustrator) files, and has a converter  System. The original site for this is ftp.x.org in /contrib/. There are many
           from PostScript to AI. It can be downloaded from  mirrors, e.g. ftp.tu-darmstadt.de in /pub/X11/contrib/ or . sunsite.unc.edu in
           http://www.wix.com/PageDraw/.  /pub/X11/contrib/.
   
    Q3.5: How do I change symbol size, line thickness and the like?  The most recent release of pbm by the author is dated December 91 and is called
           Again, this depends on the terminal type. For PostScript, you  pbmplus10dec91.tar.Z.
           can edit the generated PostScript file. An overview of what  
           means what in the PostScript files gnuplot generates can be  
           found at ftp://picard.tamu.edu/pub/gnuplot/ as gs-ps.doc.  
           A general introduction to PostScript can be found at  
           ftp://unix.hensa.ac.uk/pub/misc/ukc.reports/comp.sci/repor  
           ts/ as 11-92.ps.Z.  
   
    Q3.6: How do I generate plots in GIF format?  There is new version including lots of patches from the net that is not
           In gnuplot version 3.5, use the pbm terminal and use the  maintained by the author called netpbm, with the newest version called
           PBMPLUS package or other utilities to convert the resulting  netpbm-1mar1994.tar.gz.
           bitmap (see Q 3.3 for how to get the PBMPLUS package).  
   
           From 3.7 on, there is a gif terminal.  Check archie (see Q[*] ) for an archive site near you.
   
   For Microso$t Windows and MacOS you can use the clip board to copy your graph
   and paste it into your favourite Windows or MacOS word processor.
   
   Section 4: Wanted features  3.4 How do I post-process a gnuplot graph?
   
    Q4.0: What's new in gnuplot 3.7?  This depends on the terminal type you use.
           Please refer to the NEWS file in the source distribution.  
   
    Q4.1: Does gnuplot have hidden line removal?  You can use the terminal type fig (you may need to recompile gnuplot to enable
           Version 3.5 supports hidden line removal on all platforms  this terminal type, by putting #define FIG into <term.h>), and use the xfig
           except MS-DOS; use the command  drawing program to edit the plot afterwards. You can obtain the xfig program
   from its web site http://www.xfig.org/. More information about the text-format
   used for fig can be found in the fig-package.
   
   You may use the tgif terminal, which creates output suitable for reading within
   tgif (http://bourbon.cs.umd.edu:8001/tgif/), an interactive 2-D drawing tool
   under X11.
   
         set hidden3d  Both tgif and xfig can also be obtained from the X Window contrib distribution
   (see Q3.3).
   
    If someone can solve the 64K DGROUP memory problem, gnuplot would  Pstoedit can convert Postscript into a wide variety of formats. Pstoedit is
           support hidden line removal on MS-DOS as well. Version 3.2  available a http://www.geocities.com/SiliconValley/Nework/1958/pstoedit/.
           supports limited hidden line removal.  
   
    Q4.2: Does gnuplot support bar-charts/histograms/boxes?  Gimp may be able to post-process pixel graphics generated with gnuplot.
           As of version 3.4, it does; use the style "with boxes" for bar  
           charts. To get filled boxes, you can try a modification by  
           Steve Cumming, available via ftp from  
           ftp://grebe.geog.ubc.ca/pub/gnuplot as box.tar.  
   
    Q4.3: Does gnuplot support multiple y-axes on a single plot?  In general, you should use a vector graphics program to post-process vector
           Yes, with two unofficial mods, multiplot.shar and borders.shar.  graphic formats, and pixel based programs for pixel graphics.
           They can be obtained from  
           ftp://ftp.dartmouth.edu/pub/gnuplot/contrib/multi_woo.zip  
           or ftp://ftp.cygnus.edu/incoming/gpx38.zip.  
   
           Also, 3.7 supports this capability.  3.5 How do I change symbol size, line thickness and the like?
   
    Q4.4: Can I put multiple plots on a single page?  Again, this depends on the terminal type. For PostScript, you can edit the
           Yes, with the multiplot.shar mod, or if you are running gnuplot  generated PostScript file. An overview of what means what in the PostScript
           3.7. If you are using PostScript output, check out mpage, which  files gnuplot generates can be found at picard.tamu.edu in /pub/gnuplot/ as
           can be ftp'd from ftp.eng.umd.edu:pub/misc/mpage-2.tar.Z  gs-ps.doc. A general introduction to PostScript can be found at
   unix.hensa.ac.uk in /pub/misc/ukc.reports/comp.sci/reports/ as 11-92.ps.Z.
   
    Q4.5: Can I put both data files and commands into a single file?  3.6 How do I generate plots in the GIF format?
           This feature is in gnuplot 3.7.  
   
    Q4.6: Can I put Greek letters and super/subscripts into my labels?  If gnuplot was compiled with the external GD library, there is a gif terminal.
           You might try using the LaTeX terminal type and putting text  
           like \alpha_{3} into it.  
   
           David Denholm has written a PostScript terminal which allows  As of version 1.6, gd library dropped support for gif in favour of the superior
           for super/and subscripts, such as a^x or {/Symbol a }. Ftp to  png format. For those who absolutely need gif support in gnuplot, we are
           sotona.phys.soton.ac.uk [152.78.192.42] and get enhpost.trm,  providing older versions of gd library at the gnuplot distribution sites which
           written by David Denholm and Matt Heffron. To install it,  are free of Unisys patented code. Please read also the file README a the
           follow the instructions at the top of the file, then recompile.  ftp-sites.
           enhpost is also included in gnuplot 3.7.  
   
    Q4.7: Can I do 1:1 scaling of axes?  3.7 Can I animate my graphs?
           Not easily in 3.5; in 3.7, you can use "set size square".  
   
    Q4.8: Can I put tic marks for x and y axes into 3d plots?  First have a look at animate.dem in the demo directory of gnuplot. Basically,
           In version 3.5, you can; use the "with boxes" option.  animated graphs are a sequence of plots in a suitable format.
   
    Q4.9: Does gnuplot support a driver for <graphics format>?  Then have a look at the tool whirlgif 3.04, available at http://www.danbbs.dk/
           To see a list of the available graphic drivers for your   dino/whirlgif. It reads run-length encoded gifs and packs them into a minimal
           installation of gnuplot, type "set term".  animation. On the web-pages you will find a manual and an example.
   
           Some graphics drivers are included in the normal distribution,  You can also write a small script to get gnuplot to output a family of GIF
           but are uncommented by default. If you want to use them, you'll  files, then have it execute some animator such as gifsicle: http://http://
           have to change ~gnuplot/term.h, and recompile.  www.lcdf.org/ eddietwo/gifsicle or gifmerge http://http://the-labs.com/GIFMerge
   
    Q4.10: Can I put different text sizes into my plots?  mpeg_encode will encode a sequence of images into the mpeg-format.
           If you use PostScript output, you can use Dave Denholm's and  
           Matt Heffron's updated PostScript driver,  
           /sotona.phys.soton.ac.uk:/enhpost.trm (see also Q4.6 ).  
           Else, use 3.7.  
   
    Q4.11 How do I modify gnuplot, and apply 'patches'?  3.8 How do I plot implicit defined graphs?
           For this, you will need to recompile gnuplot.  
   
           Modifications people make are either done by replacing files,  Implicit graphs or curves cannot be plotted directly in gnuplot. However there
           such as terminal drivers, or by 'patching'. If a file is a  is a workaround.
           replacement, it will probably tell you in its README or in the  gnuplot> # as example. Place your definition in the following line
           lines at the beginning.  gnuplot> f(x,y) = y - x**2 / tan(y)
   gnuplot> set contour base
   gnuplot> set cntrparam levels discrete 0.0
   gnuplot> set nosurface
   gnuplot> set term table
   gnuplot> set out 'curve.dat'
   gnuplot> splot f(x,y)
   gnuplot> set out
   gnuplot> set term {your usual terminal for interactive work}
   gnuplot> plot 'curve.dat' w l
   The trick is to draw the single contour line z=0 of the surface z=f(x,y), and
   store the resulting contour curve to a gnuplot datafile.
   
           To patch a file, you need Larry Wall's patch utility. On many  4 Wanted features
           UNIX systems, it is already installed; do a man patch to check.  
           If it isn't, you'll have to get it; it can be found wherever  
           GNU software is archived.  
   
    Q4.12 How do I skip data points?  4.1 What's new in gnuplot 3.7?
           By specifying ? as a data value, as in  
   
   Too many things to be named here. Please refer to the NEWS file in the source
   distribution.
   
         1 2  4.2 Does gnuplot have hidden line removal?
         2 3  
         3 ?  
         4 5  
   
    Q4.13 How do I plot every nth point?  Version 3.7 supports hidden line removal on all platforms; use the command set
           You can apply the patch point_skip from the contrib section  hidden3d.
           (see Q5.3 or, assuming you have awk installed on your  
           system, you can use the following line:  
   
   The 16-bit binaries of gnuplot support the hidden line removal only partially
   as the hidden-line algorithm may hit the 640k memory limit.
   
         gnuplot> plot "< awk '{if(NR%5==0)print}' file.dat"  4.3 Does gnuplot support bar-charts/histograms/boxes?
   
    plots every 5th line, and  Use the style "with boxes" for bar charts. To get filled boxes, you can try a
   modification by Steve Cumming and jturk, available via ftp from the contrib
   directory ftp.ucc.ie in /pub/gnuplot/contrib/gpl37fboxpatch.tar.gz.
   
         gnuplot> plot "< awk '$0 !~ /^#/ {if(NR%40==0)print $1, $4}' file.dat"  Bernhard Reiter wrote an AWK script to post-process the fig-terminal output.
   Please have a look at http://www.usf.uni-osnabrueck.de/ breiter/tools/gnuplot/
   barcharts.en.html.
   
    plots every 40th line while skipping commented lines.  4.4 Does gnuplot support pie charts?
   
   It's not possible in gnuplot, but have a look at http://
   www.usf.uni-osnabrueck.de/ breiter/tools/piechart/piecharts.en.html
   
   Section 5: Miscellaneous  4.5 Does gnuplot quarterly time charts?
   
    Q5.1: I've found a bug, what do I do?  It's not possible in gnuplot, but have a look at http://ricardo.ecn.wfu.edu/
           First, try to see whether it actually is a bug, or whether it   cottrell/qplot. The corresponding file qplot.zip can be obtained from the
           is a feature which may be turned off by some obscure set -  contrib directory on any gnuplot server.
           command.  
   
           Next, see wether you have an old version of gnuplot; if you do,  4.6 Does gnuplot support multiple y-axes on a single plot?
           chances are the bug has been fixed in a newer release.  
   
           If, after checking these things, you still are convinced that  Yes. You can have 2 x- and 2 y-axes per plot. See "plot".
           there is a bug, proceed as follows. If you have a fairly  
           general sort of bug report, posting to  
           comp.graphics.apps.gnuplot is probably the way to go. If  
           you have investigated a problem in detail, especially if you  
           have a context diff that fixes the problem, please e-email a  
           report to bug-gnuplot@dartmouth.edu. The bug-gnuplot list is  
           for reporting and collecting bug fixes, the  
           comp.graphics.apps.gnuplot newsgroup will be more help for  
           finding work arounds or actually solving gnuplot related  
           problems. If you do send in a bug report, be sure and include  
           the version of gnuplot (including patchlevel), terminal driver,  
           operating system, an exact description of the bug and input  
           which can reproduce the bug. Also, any context diffs should be  
           referenced against the latest official version of gnuplot if at  
           all possible.  
   
    Q5.2: Can I use gnuplot routines for my own programs?  4.7 Can I put multiple pages on one page?
           Yes. John Campbell <jdc@nauvax.ucc.nau.edu> has written  
           gplotlib, a version of gnuplot as C subroutines callable from a  
           C program. This is available as gplotlib.tar.Z on the machine  
           ftp.nau.edu in the directory /pub/gplotlib.tar.Z. This library  
           has been updated to be compatible with version 3.5.  
   
    Q5.3: What extensions have people made to gnuplot? Where can I get  Yes. "set multiplot"
           them?  
           __Extensions are available from  
           ftp://ftp.dartmouth.edu/pub/gnuplot/contrib/ . It contains  
           the following files:  
   
     Point Skips  If you use the postscript terminal and plot one graph per page you can use the
   program mpage (http://www.mesa.nl/pub/mpage) to print multiple logical pages
   per physical page. A similar program is the psnup program in the psutils
   package. This package is available at any CTAN mirror.
   
           + _Data Filtering_ Instead of just having two params  4.8 Can I put both data files and commands into a single file?
             following the style param, there are now 4:  
                o 1: line_type  
                o 2: point_type  
                o 3: point_skip - gives the number of data samples per  
                  plotted point  
                o 4: point_offs - gives the sample number on which to plot  
                  the first point  
             Thus points are plotted only for the samples n satisfying n =  
             point_skip*i + point_offs for some non-negative integer i.  
             From:  
             pixar!sun!prony.Colorado.EDU!clarkmp@ucbvax.berkeley.edu  
             (Michael Clark)  
           + _Point Skip with Awk_ With UNIX,  
   
 gnuplot> plot "< awk '{if(NR%5==0)print$0}' file.dat"  This is possible by the new plot "-" possibility. The plot "-" command allows
         From: James Darrell McCauley, mccauley@ecn.purdue.edu  to read the data to be plot from standard input or the current batch job.
           + _New Xlib mods._ From: gregg hanna  
             (gregor@kafka.saic.com)  
   
     Vectors and Arrows  gnuplot> plot "-"
           + _Program to convert lines to vectors_ This program turns  1 1
             line segments into line segments with a half-arrow at the  2 4
             head: by uncommenting two lines below, the arrowhead will be  3 9
             a triangle. optional arguments: size angle where size is a  <CTRL-D>
             fraction of each vector's magnitude and angle is in degrees  
             all data taken from standard input, and output to standard  
             output. typical invocation:  
   
 arrow 0.2 15 <vector.lin >vector.heads  4.9 Can I put Greek letters and super/subscripts into my labels?
         From: andrew@jarthur.claremont.edu (Andrew M. Ross)  
           + _Vect2gp_, an awk script to make gnuplot command script  
             to draw a vector field map. From: hiro@ice3.ori.u-tokyo.ac.jp  
             (Yasu-Hiro YAMAZAKI)  
           + _GNUPLOT to SIPP_ This is a "far from perfect" converter  
             that takes gnuplot table output and splits it in polygons.  
             Then it calls sipp to render it. You get sipp from  
             isy.liu.se:/pub/sipp or ask archie. From:  
             chammer@POST.uni-bielefeld.de (Carsten Hammer)  
   
     Histograms and Pie Charts  You might try using the LATEX terminal type and putting text like "\\alpha_{3}"
           + _Histogram C program_ The short C program below is a  or '\alpha_{3}' into it.
             filter that calculates a histogram from a sequence of numbers  
             and prints the output in such a format that Gnuplot can plot  
             the histogram by the command sequence  
   
     !histogram < datain > tmp;  The enhanced option in the postscript terminal is also able to use sub- and
     plot "tmp" with impulses  superscripts. It also allows to use Greek letters and symbols via symbol fonts.
             From: mustafa@seas.smu.edu (Mustafa Kocaturk)  
           + _HG_ is an automatic histogram generator. it reads a  
             column of data from an input file and emits a [log] histogram  
             ks does ks or chi^2 tests on a set of input arrays. you need  
             the "numerical recipes in C" library somewhere on your system  
             to link this one. I can not undertake to fix bugs or add  
             features, but I might do it if asked. From: Steve Cumming  
             stevec@geog.ubc.ca  
           + _Piechart C program_ The short C program below formats  
             data for display as a piechart. From: mccauley@ecn.purdue.edu  
             (James Darrell McCauley)  
   
     Interprocess Communications  If you include your gnuplot-graphs into a LATEX document you can use the
           + _Notes of Windows Hooks_ From: Maurice  LATEX-package psfrag to typeset any characters into your graphs.
             Castro,maurice@bruce.cs.monash.edu.au  
           + _Named Pipes Example _From:  
             dtaber@deathstar.risc.rockwell.com (Don Taber)  
           + _PipeLib_ What the library does is set up to 20 programs  
             going (like gnuplot), then allows you to send to them as if  
             the program were typing on the command line. I've included a  
             brief set of docs after the source code, in latex format.  
             There is no facility to watch the output of a program. From:  
             ssclift@neumann.uwaterloo.ca (Simon Clift)  
           + _Popen example from lsqrfit_ The following function  
             sends a command to gnuplot. Gnuplot will execute the command  
             just as if you typed it at the gnuplot command line. This  
             example is adapted from my least squares fitting program  
             which is located at ftp.cdrom.com in  
             pub/os2/2_x/unix/lsqrft14.zip. Complete source is included.  
             From: michael@krypton.mit.edu (Michael Courtney)  
   
     Multiple logical plots on a single page  One more possibility is to use the MetaPost terminal. It supports TEX syntax
           + _Gawk script for multiple encapsulated postscript on a  and is converted onto encapsulated PostScript by mpost.
             page_ It's slightly more flexible than mpage, because it  
             changes the aspect ratio of the plots; mpage according to the  
             documentation only allows 1, 2, 4, or 8 plots on a page. This  
             script works for unix with encapsulated postscript (eps)  
             output. It should work with gawk or nawk, although I've only  
             tested it with gawk. (Gawk is GNU's version of awk and is  
             available from prep.ai.mit.edu.) You just specify how many  
             rows and columns of plots you want and it does the rest. For  
             example, gnuplot_eps rows=3 cols=2 *.eps | lpr will print all  
             eps files in your current directory with 6 on a page. Also,  
             see the comments in the file. From:  
             holt@goethe.cns.caltech.edu (Gary Holt)  
           + _Sed script for multiple encapsulated postscript on a  
             page_ You have MULTIPLE postscript files each containing a  
             single plot. From: wgchoe@scoupe.postech.ac.kr (Choe Won Gyu)  
           + _Massive patch_ with add multiplotcapability to all  
             devices and a lot more. The reason it is offered in this form  
             is because the original multiplot.pat did not patch correctly  
             into gnuplot version 3.5. This mod also add borders options,  
             financial plots, multiple line titles and other asundry  
             items. Use at your own risk. Look at the top of makefile.r  
             for a more complete list of changes.  
             From: Alex Woo, woo@playfair.stanford.edu  
   
     lvs.zip  4.10 Can I do 1:1 scaling of axes?
             This contains miscellaneous, modifications, which include:  
           + Label positioning using either plot or device-relative  
             coodinates  
           + Portability to Irix-5.2 and Irix-5.3  
           + The "thru" keyword has been extended to include "thrux" for  
             the X - Coordinate  
           + Capability to read a ordinary Fortran-style unformatted file  
           + A Perl script for better handling of eps  
           + Modifications to docs/doc2info to generate "next", "prev",  
             and "up" data for each node.  
           + Changes in the documentation to reflect the above.  
   
     Miscellaneous Mods  Use "set size square".
           + _Congp3d3_ is a preprocessor to draw contour plots on  
             irregular regions. From: mrb2@nrc.gov (Margaret Rose Byrne)  
           + _Sockpipe_ is a socket based pipe needed for the  
             Stardent OS. From: Mike Hallesy, Stardent Computer Product  
             Support, hal@stardent.com  
           + _Time Series_ is a patch to add multiline titles and  
             labels, time series x and y data and tic marks, and automatic  
             resizing of plots and much more. From: Hans Olav Eggestad,  
             olav@jordforsk.nlh.no  
   
     Other Operationing Systems  4.11 Can I put tic marks for x and y axes into 3d plots?
           + _MacIntosh Port of Version 3.2_ From: Noboru Yamamoto,  
             sun!kekvax.kek.jp!YAMAMOTO@pixar.com  
           + _MacIntosh Port of Version 3.5_ From:  
             laval@londres.cma.fr (Philippe LAVAL)  
           + _OS-9 Port of Version 3.2_  
   
   Use the "with boxes" option.
   
    Q5.4: Can I do heavy - duty data processing with gnuplot?  4.12 Does gnuplot support a driver for <graphics format>?
           Gnuplot alone is not suited very well for this. One thing you  
           might try is fudgit, an interactive multi-purpose fitting  
           program written by Martin-D. Lacasse  
           (isaac@frodo.physics.mcgill.ca). It can use gnuplot as its  
           graphics back end and is available from ftp.physics.mcgill.ca  
           in /pub/Fudgit/fudgit_2.33.tar.Z [132.206.9.13], and from the  
           main Linux server, tsx-11.mit.edu [18.172.1.2] and its numerous  
           mirrors around the world as  
           /pub/linux/sources/usr.bin/fudgit-2.33.tar.z. Versions are  
           available for AIX, Data General, HP-UX, IRIX 4, Linux, NeXT,  
           Sun3, Sun4, Ultrix, OS/2 and MS-DOS. The MS-DOS version is  
           available on simtel20 mirrors (simtel20 itself has closed down)  
           in the "math" subdirectory as fudg_231.zip.  
   
           Carsten Grammes has written a fitting program which goes  To see a list of the available graphic drivers for your installation of
           together with gnuplot; it is called gnufit and is available  gnuplot, type "set term".
           from the official gnuplot sites, as the files gnufit12.info,  
           gnufit12.tar.gz (source) and gft12dos.zip (MS-DOS). It has been  
           merged into gnuplot 3.7.  
   
           Michael Courtney has written a program called lsqrft, which  Some graphics drivers are included in the normal distribution, but are
           uses the Levenberg - Marquardt - Algorithm for fitting data to  uncommented by default. If you want to use them, you'll have to change gnuplot/
           a function. It is avialiable from ftp.cdrom.com as  term.h, and recompile.
           /pub/os2/2_x/unix/lsqrft13.zip; sources, which should compile  
           on Unix, and executables for MS-DOS and OS/2 2.x are included.  
           There is an interface to the OS/2 presentation manager.  
   
           You might also want to look at the applications developed by  4.13 Can I put different text sizes into my plots?
           the Software Tools Group (STG) at the National Center for  
           Supercomputing Applications. Ftp to ftp.ncsa.uiuc.edu  
           [141.142.20.50] and get the file README.BROCHURE for more  
           information.  
   
           You can also try pgperl, an integration of the PGPLOT plotting  Some terminals, like the postscript terminal can, others can't. Look at the
           package with Perl 5. Information can be found at  help for the different terminals.
           http://www.ast.cam.ac.uk/~kgb/pgperl.html, the source is  
           available from ftp://ftp.ast.cam.ac.uk/pub/kgb/pgperl/ or  
           ftp://linux.nrao.edu/pub/packages/pgperl/.  
   
           Another possibility is Octave. To quote from its README: Octave  4.14 How do I modify gnuplot, and apply 'patches'?
           is a high-level language, primarily intended for numerical  
           computations. It provides a convenient command line interface  
           for solving linear and nonlinear problems numerically.  
   
           The latest released version of Octave is always available via  For this, you will need to recompile gnuplot.
           anonymous ftp from bevo.che.wisc.edu in the directory  
           /pub/octave.  
   
    Q5.5: I have ported gnuplot to another system, or patched it. What do  Modifications people make are either done by replacing files, such as terminal
           I do?  drivers, or by 'patching'. If a file is a replacement, it will probably tell
           If your patch is small, mail it to bug-gnuplot@dartmouth.edu,  you in its README or in the lines at the beginning.
           with a thorough description of what the patch is supposed to  
           do, which version of gnuplot it is relative to, etc. Also, you  
           can send notification of the patch to the FAQ maintainer, if  
           you want a mention. Please don't send the patch itself to me  
           :-)  
   
           If your modifications are extensive (such as a port to another  To patch a file, you need Larry Wall's patch utility. On many UNIX systems, it
           system), upload your modifications to  is already installed; do a man patch to check. If it isn't, you'll have to get
           ftp://ftp.dartmouth.edu/pub/dropoff. Please drop a note to  it; it can be found wherever GNU software is archived.
           David.Kotz@dartmouth.edu, the maintainer of the gnuplot  
           subdirectory there, plus a note to bug-gnuplot@dartmouth.edu.  
   
    Q5.6: I want to help in developing gnuplot 3.7. What can I do?  4.15 How do I skip data points?
           Join the gnuplot beta test mailing list by sending a mail  
           containing the line  
   
   By specifying ? as a data value, as in
           1 2
           2 3
           3 ?
           4 5
   
 subscribe info-gnuplot-beta  4.16 How do I plot every nth point?
   
    in the body (not the subject) of the mail to Majordomo@Dartmouth.EDU.  This can be specified with the various options for the command "plot".
   
   4.17 How do I plot a vertical line?
   
   Section 6: Making life easier  Depending on context, the main methods are:
   
    Q6.1: How do I plot two functions in non - overlapping regions?    * set arrow .... .... nohead where you have to compute explicitly the start
           Use a parametric plot. An example:      and the end of the arrow.
     * generate (inlined) datapoints and plot them
     * switch to parametric mode
   
   4.18 How do I plot data files
   
         set parametric  4.19 How do I include accentuated characters in Postscript output?
         a=1  
         b=3  
         c=2  
         d=4  
         x1(t) = a+(b-a)*t  
         x2(t) = c+(d-c)*t  
         f1(x) = sin(x)  
         f2(x) = x**2/8  
         plot [t=0:1] x1(t),f1(x1(t)) title "f1", x2(t), f2(x2(t)) title "f2"  
   
    Q6.2: How do I run my data through a filter before plotting?  To obtain accentuated characters like ü or n into postscript plots you should
           If your system supports the popen() function, as Unix does, you  use the postscript character codes together with the appropriate encoding
           should be able to run the output through another process, for  option. See the following example:
           example a short awk program, such as  
   
   gnuplot> set encoding iso_8859_1
   gnuplot> set title "M\374nchner Bierverbrauch \374ber die Jahre"
   gnuplot> plot "bier.dat" u 1:2
   
         gnuplot> plot "< awk ' { print $1, $3/$2 } ' file.in"  5 Miscellaneous
   
    Unfortunately, in 3.2, there is a rather short limitation on the  5.1 I've found a bug, what do I do?
           maximum argument length, so your command line may be truncated  
           (usually, this will mean that awk cannot find the filename).  
           Also, you may need to escape the $ - characters in your awk  
           programs.  
   
           As of version 3.4, gnuplot includes the thru - keyword for the  First, try to see whether it actually is a bug, or whether it is a feature
           plot command for running data files through a gnuplot - defined  which may be turned off by some obscure set-command.
           function.  
   
           You can also get divhack.patch from  Next, see whether you have an old version of gnuplot; if you do, chances are
           sotona.phys.soton.ac.uk[152.78.192.42] via anonymous ftp. It  the bug has been fixed in a newer release.
           allows expressions of the kind  
   
   Fixes for bugs reported since the release of the current version are held in
   the patches directory at gnuplot distribution sites. Before submitting a bug
   report, please check whether the bug in question has already been fixed.
   
         gnuplot> plot "datafile" using A:B:C  If, after checking these things, you still are convinced that there is a bug,
   proceed as follows. If you have a fairly general sort of bug report, posting
   to ~comp.graphics.apps.gnuplot is probably the way to go. If you have
   investigated a problem in detail, especially if you have a context or unified
   diff that fixes the problem, please e-email a report to
   bug-gnuplot@dartmouth.edu.
   
    where A,B,C,... are now either a column number, as usual, or an  The bug-gnuplot list is for reporting and collecting bug fixes, the  ~
           arbitrary expression enclosed in ()'s, and using $1,$2,etc to  comp.graphics.apps.gnuplot newsgroup will be more help for finding work arounds
           access the data columns.  or actually solving gnuplot related problems. If you do send in a bug report,
   be sure and include the version of gnuplot (including patchlevel) as shown by
   the command "show version long", terminal driver, operating system, an exact
   description of the bug and input which can reproduce the bug. Failure to
   indicate these details can render a solution to your problem almost impossible.
   Also, any context diffs should be referenced against the latest official
   version of gnuplot if at all possible.
   
    Q6.3: How do I make it easier to use gnuplot with LaTeX?  5.2 Can I use gnuplot routines for my own programs?
           There is a set of LaTeX macros and shell scripts that are meant  
           to make your life easier when using gnuplot with LaTeX. This  
           package can be found on ftp.dartmouth.edu [129.170.16.54, soon  
           to be 129.170.8.11] in pub/gnuplot/latex.shar, by David Kotz.  
           For example, the program "plotskel" can turn a gnuplot-output  
           file plot.tex into a skeleton file skel.tex, that has the same  
           size as the original plot but contains no graph. With the right  
           macros, the skeleton can be used for preliminary LaTeX passes,  
           reserving the full graph for later passes, saving tremendous  
           amounts of time.  
   
    Q6.4: How do I save and restore my settings?  Yes. John Campbell jdc@nauvax.ucc.nau.edu has written gplotlib, a version of
           Use the "save" and "load" commands for this; see "help save"  gnuplot as C subroutines callable from a C program. This is available as
           and "help load" for details.  gplotlib.tar.gz at ftp.nau.edu in /pub/gplotlib.tar.gz. This library has been
   updated to be compatible with version 3.5.
   
    Q6.5: How do I plot lines (not grids) using splot?  On systems supporting the pipes, you can pipe commands to gnuplot from other
           If the data in a data file for splot is arranged in such a way  programs.
           that each one has the same number of data points (using blank  
           lines as delimiters, as usual), splot will plot the data with a  
           grid. If you want to plot just lines, use a different number of  
           data entries (you can do this by doubling the last data point,  
           for example). Don't forget to set parametric mode, of course.  
   
    Q6.6: How do I plot a function f(x,y) which is bounded by other  5.3 What extensions have people made to gnuplot? Where can I get them?
           functions in the x-y plain?  
           An example:  
   
   Extensions are available from ftp.ucc.ie in /pub/gnuplot/contrib/
   
         f(x,y) = x**2 + y **2  Some extensions available:
         x(u) = 3*u  
         yu(x) = x**2  
         yl(x) = -x**2  
         set parametric  
         set cont  
         splot [0:1] [0:1] u,yl(x(u))+(yu(x(u)) - yl(x(u)))*v,\  
         f(x(u), (yu(x(u)) - yl(x(u)))*v)  
   
    Q6.7: How do I get rid of <feature in a plot>?    * barchart_via_fig: awk scripts to produce barcharts with filled boxes.
           Usually, there is a set command to do this; do a    * date-errorbar: allows dates in the hi/lo fields for errorbars.
     * gp37os2-mouse: OS/2 binaries with mouse support (feature included in
       current beta versions).
     * perltk: A perl/tk canvas widget.
     * polyg.patch: Implements a polygon plotting style.
     * xgfe: graphical front end using the Qt widgets available at http://
       lnc.usc.edu/docs/xgfe/xgfe.html.
     * Gnuplot.py: A python package to create graphs from within python. More
       information at http://monsoon.harvard.edu/ mhagger/Gnuplot/Gnuplot.html.
   
   5.4 I need an integration, fft, iir-filter,....!
   
         gnuplot> ?set no  Gnuplot has been and is a plotting program, no data processing or mathematical
   program suite. Therefore gnuplot can't do that. Look into the demo
   "bivariat.dem" for a basic implementation of an integration.
   
    for a short overview.  For more sophisticated data-processing read the next section.
   
    Q6.8: How do I call gnuplot from my own programs?  5.5 Can I do heavy-duty data processing with gnuplot? or What is beyond
           Here's code which works for a UNIX system, using (efficient)  gnuplot?
           named pipes.  
   
   gnuplot alone is not suited very well for this. One thing you might try is
   fudgit, an interactive multi-purpose fitting program written by Martin-D.
   Lacasse (isaac@frodo.physics.mcgill.ca). It can use gnuplot as its graphics
   back end and is available from ftp.physics.mcgill.ca in /pub/Fudgit/
   fudgit_2.33.tar.Z and from the main Linux server, tsx-11.mit.edu and its
   numerous mirrors around the world as /pub/linux/sources/usr.bin/
   fudgit-2.33.tar.z. Versions are available for AIX, Data General, HP-UX, IRIX 4,
   Linux, NeXT, Sun3, Sun4, Ultrix, OS/2 and MS-DOS. The MS-DOS version is
   available on simtel20 mirrors (simtel20 itself has closed down) in the "math"
   subdirectory as fudg_231.zip.
   
 #include <sys/types.h>  Carsten Grammes has written a fitting program which has been merged into
 #include <sys/stat.h>  gnuplot 3.7.
 #include <stdlib.h>  
 #include <stdio.h>  
 #include <math.h>  
 #include <unistd.h>  
   
 #define PANIC(a) do { \  Michael Courtney has written a program called lsqrft, which uses the
                 perror(a); \  Levenberg-Marquardt - Algorithm for fitting data to a function. It is available
                 if (temp_name) unlink(temp_name);\  from hobbes.nmsu.edu in /pub/os2/apps/analysis/lsqrft15.zip; sources, which
                 exit(1);\  should compile on Unix, and executables for MS-DOS and OS/2 are available.
         } while(0)  There is an interface to the OS/2 presentation manager.
   
 int main() {  You might also want to look at the applications developed by the Software Tools
     FILE *command,*data;  Group (STG) at the National Center for Supercomputing Applications. Ftp to
     char *temp_name = NULL;  ftp.ncsa.uiuc.edu and get the file README.BROCHURE for more information.
     double a,b;  
     int i;  
   
     if ((temp_name = tmpnam((char *) 0)) == 0) PANIC("tmpnam failed");  You can also try pgperl, an integration of the PGPLOT plotting package with
     if(mkfifo(temp_name, S_IRUSR | S_IWUSR) != 0) PANIC("mkfifo failed");  Perl 5. Information can be found at http://www.ast.cam.ac.uk/AAO/local/www/kgb/
     command = popen("gnuplot","w");  pgperl, the source is available from ftp.ast.cam.ac.uk in /pub/kgb/pgperl/ or
     fprintf(command,"plot \"%s\" with lines\n",temp_name); fflush(command);  linux.nrao.edu in /pub/packages/pgperl/.
     data = fopen(temp_name,"w");  
     for (i=0; i<20; i++) {  
         a = i/10.0;  
         b = sin(a);  
         fprintf(data,"%f %f\n",a,b);  
     }  
     fclose(data);  
     fprintf(stderr,"press enter to continue..."); fflush(stderr);  
     getchar();  
   
     fprintf(command,"plot \"%s\" with lines\n",temp_name); fflush(command);  Another possibility is Octave. To quote from its README: Octave is a high-level
     data = fopen(temp_name,"w");  language, primarily intended for numerical computations. It provides a
     for (i=0; i<20; i++) {  convenient command line interface for solving linear and nonlinear problems
         a = i/10.0;  numerically. The latest released version of Octave is always available from
         b = cos(a);  http://www.che.wisc.edu/octave/ and via anonymous ftp from bevo.che.wisc.edu in
         fprintf(data,"%f %f\n",a,b);  /pub/octave. Octave is licensed under GPL (see http://www.gnu.org/copyleft/
     }  gpl.html). By the way, octave uses gnuplot as its plotting engine, so you get a
     fclose(data);  data-processing program on top of gnuplot.
     fprintf(stderr,"press enter to continue..."); fflush(stderr);  
     getchar();  
     pclose(command);  
     unlink(temp_name);  
     return 0;  
 }  
   
    Here's code for OS/2, again using named pipes; I'm unable to check  Finally, there is scilab at http://www-rocq.inria.fr/scilab/ doing about the
           this out myself. This code is care of fearick@physci.uct.ac.za  same as matlab. It is free but copyrighted software.
           (Roger Fearick).  
   
   5.6 I have ported gnuplot to another system, or patched it. What do I do?
   
 #include <stdio.h>  If your patch is small, mail it to info-gnuplot-beta@dartmouth.edu, with a
 #define INCL_DOS  thorough description of what the patch is supposed to do, which version of
 #define INCL_DOSPROCESS  gnuplot it is relative to, etc. Also, you can send notification of the patch to
 #define INCL_DOSNMPIPES  the FAQ maintainer, if you want a mention. Please don't send the patch itself
 #include <os2.h>  to me.
   
 main()  If your modifications are extensive (such as a port to another system), place
     {  them on a web/ftp site for download. There is currently no possibility to
     HPIPE hpipe ;  upload patches. Send a note to info-gnuplot-beta@dartmouth.edu on where to find
     FILE *hfile, *hgnu ;  the patch, what it is supposed to do, which version of gnuplot it is to be
         /* create a named pipe. Use NP_WAIT so that DosConnect...  applied against. For the time being (summer 1999) you can also send the patch
            blocks until client (gnuplot) opens, and client reads  to gnuplot@ftp.ucc.ie.
            are blocked until data is available */  
     DosCreateNPipe( "\\pipe\\gtemp",  
                     &hpipe,  
                     NP_ACCESS_OUTBOUND,  
                     NP_WAIT|NP_TYPE_BYTE|1,  
                     256,  
                     256,  
                     -1 ) ;  
         /* use stream i/o */  
     hfile = fdopen( hpipe, "w" ) ;  
   
         /* start gnuplot; use unbuffered writes so we don't need to  5.7 I want to help in developing the next version of gnuplot. What can I do?
            flush buffer after a command */  
     hgnu = popen( "gnuplot", "w" ) ;  
     setvbuf( hgnu, NULL, _IONBF, 0 ) ;  
   
         /* plot a set of data */  Join the gnuplot beta test mailing list by sending a mail containing the line
   subscribe info-gnuplot-beta in the body (not the subject) of the mail to
   Majordomo@Dartmouth.EDU.
   
     fprintf( hgnu, "plot '/pipe/gtemp'\n" ) ;  /* issue plot command */  Also check with http://sourceforge.net/projects/gnuplot about latest source for
     DosConnectNPipe( hpipe ) ;              /* wait until 'file' opened */  beta releases for development.
     fprintf( hfile, "1 1\n" ) ;             /* write data to 'file' */  
     fprintf( hfile, "2 2\n" ) ;  
     fprintf( hfile, "3 3\n" ) ;  
     fprintf( hfile, "4 4\n" ) ;  
     fflush( hfile ) ;                       /* flush buffer forces read */  
     DosSleep( 500 ) ;                       /* allow gnuplot to catch up */  
     DosDisConnectNPipe( hpipe ) ;           /* disconnect this session */  
     fprintf( hgnu, "pause -1\n" ) ;         /* admire plot */  
   
         /* plot another set of data */  5.8 Open questions for inclusion into the FAQ?
   
     fprintf( hgnu, "plot '/pipe/gtemp'\n" ) ;  info-gnuplot-beta@Dartmouth.EDU.
     DosConnectNPipe( hpipe ) ;  
     fprintf( hfile, "1 4\n" ) ;  
     fprintf( hfile, "2 3\n" ) ;  
     fprintf( hfile, "3 2\n" ) ;  
     fprintf( hfile, "4 1\n" ) ;  
     fflush( hfile ) ;  
     DosSleep( 500 ) ;  
     DosDisConnectNPipe( hpipe ) ;  
     fprintf( hgnu, "pause -1\n" ) ;  
   
     DosClose( hpipe ) ;  Please submit your questions (along with the answer) to
     pclose( hgnu ) ;  info-gnuplot-beta@Dartmouth.EDU.
     }  
   
    ; The above code works for gnuplot 3.5. In gnuplot 3.7, this can be  6 Making life easier
           greatly simplified, since data can be fed 'inline, as in  
   
   6.1 How do I plot two functions in non-overlapping regions?
   
 plot '-' w l  Use a parametric plot. An example:
 1 1  gnuplot> set parametric
 2 3  gnuplot> a=1
 3 4  gnuplot> b=3
 e  gnuplot> c=2
   gnuplot> d=4
   gnuplot> x1(t) = a+(b-a)*t
   gnuplot> x2(t) = c+(d-c)*t
   gnuplot> f1(x) = sin(x)
   gnuplot> f2(x) = x**2/8
   gnuplot> plot [t=0:1] x1(t),f1(x1(t)) title "f1", x2(t), f2(x2(t)) title "f2"
   
   You can also use gnuplot's ability to ignore mathematically undefined
   expressions: the expression 1/0 is silently ignored, thus a construction like
   gnuplot> set xran [-10:10]
   gnuplot> plot (abs(x)>0.5?1/0: x**2)
   plots a quadratic function only for |x| < 0.5.
   
   Section 7: Known problems  6.2 How do I run my data through a filter before plotting?
   
    Q7.1: Gnuplot is not plotting any points under X11! How come?  If your system supports the popen() function, as Unix does, you should be able
           Very probably, you still are using an old version of  to run the output through another process, for example a short awk program,
           gnuplot_x11. Remove that, then do a full installation.  such as
   
           On VMS, you need to make several symbols:  gnuplot> plot "< awk ' { print $1, $3/$2 } ' file.in"
   
   The plot command is very powerful and is able to do some arithmetic on
   datafiles. See "help plot".
   
   6.3 How do I make it easier to use gnuplot with LATEX?
   
   There is a set of LATEX macros and shell scripts that are meant to make your
   life easier when using gnuplot with LATEX. This package can be found on
   ftp.dartmouth.edu in pub/gnuplot/latex.shar, by David Kotz. For example, the
   program "plotskel" can turn a gnuplot-output file plot.tex into a skeleton file
   skel.tex, that has the same size as the original plot but contains no graph.
   With the right macros, the skeleton can be used for preliminary LATEX passes,
   reserving the full graph for later passes, saving tremendous amounts of time.
   
   6.4 How do I save and restore my settings?
   
   Use the "save" and "load" commands for this; see "help save" and "help load"
   for details.
   
   6.5 How do I plot lines (not grids) using splot?
   
   If the data in a data file for splot is arranged in such a way that each one
   has the same number of data points (using blank lines as delimiters, as usual),
   splot will plot the data with a grid. If you want to plot just lines, use a
   different number of data entries (you can do this by doubling the last data
   point, for example). Don't forget to set parametric mode, of course.
   
   6.6 How do I plot a function f(x,y) which is bounded by other functions in the
   x-y plain?
   
   An example:
   gnuplot> f(x,y) = x**2 + y **2
   gnuplot> x(u) = 3*u
   gnuplot> yu(x) = x**2
   gnuplot> yl(x) = -x**2
   gnuplot> set parametric
   gnuplot> set cont
   gnuplot> splot [0:1] [0:1] u,yl(x(u))+(yu(x(u)) - yl(x(u)))*v,\
   > f(x(u), (yu(x(u)) - yl(x(u)))*v)
   
   6.7 How do I get rid of <feature> in a plot?
   
   Usually, there is a set command to do this; do a gnuplot> ?set no for a short
   overview.
   
   6.8 How do I call gnuplot from my own programs?
   
   There's a code which works for a UNIX system, using (efficient) named pipes. On
   M$ Windows platforms, due to the lacking standard input of GUI programs, you
   need to use the C-code pgnuplot written by Hans-Bernhard Broeker
   broeker@physik.rwth-aachen.de. You can obtain this file on a ftp-server
   carrying the source for gnuplot.
   
   6.9 What if I need h-bar (Planck's constant)?
   
   There is no predefined variable like pi. However to put h-bar as a character
   into the label, you must use the PostScript terminal. You can play around with
   constructs like @{/=56 -} {/=24 h} or {/=8 @{/Symbol=24 -} _{/=14 h}} In the
   latter, the "-" (a long one in /Symbol) is non-spacing and 24-pt. The 14-pt "h"
   is offset by an 8-pt space (which is the space preceding the "_") but smaller,
   since it's written as a subscript. But these don't look too much like the hbar
   we're used to, since the bar is horizontal instead of sloped. I don't see a way
   to get that. I tried using an accent (
   264 in isoLatin encoding), but I haven't found a way to scale and position the
   pieces correctly.
   
   One more possibility would be {/=14 @^{/Symbol=10 -}{/=14 h}}.
   
   (This is a hint by Richard Crawford).
   
   7 Known Problems
   
   7.1 Gnuplot is not plotting any points under X11! How come?
   
   On VMS, you need to make several symbols:
   
         $ gnuplot_x11 :== $disk:[directory]gnuplot_x11          $ gnuplot_x11 :== $disk:[directory]gnuplot_x11
         $ gnuplot :== $disk:[directory]gnuplot.exe          $ gnuplot :== $disk:[directory]gnuplot.exe
         $ def/job GNUPLOT$HELP disk:[directory]gnuplot.hlb          $ def/job GNUPLOT$HELP disk:[directory]gnuplot.hlb
   
    Then run gnuplot from your command line, and use  Then run gnuplot from your command line, and use "set term x11".
   
         gnuplot> set term x11  If you run gnuplot on Unix systems, be sure that the newest gnuplot_x11 is the
   first in your search path.
   
    Q7.2: My isoline data generated by a Fortran program is not handled  7.2 My isoline data generated by a Fortran program is not handled correctly.
           correctly. What can I do?  What can I do?
           One known cause for this is the use of list-directed output (as  
           in WRITE(10,*) for generating blank lines. Fortran uses ASA  
           carriage control characters, and for list - directed output  
           this results in a space being output before the newline.  
           Gnuplot does not like this. The solution is to generate blank  
           lines using formatted output, as in WRITE(10,'()'). If you use  
           carriage return files in VMS Fortran, you may have to open the  
           file with OPEN(...,CARRIAGECONTROL='DTST') or convert it using  
           the DECUS utility ATTRIB.EXE:  
   
   Update to the newest gnuplot. Gnuplot 3.7 is able to read Fortran-style files
   where a blank line can contain more than a linefeed.
   
         VMS> ATTRIB/RATTRIB=IMPDTED FOR010.DAT  7.3 Why does gnuplot ignore my very small numbers?
   
    Q7.3: Why does gnuplot ignore my very small numbers?  Gnuplot treats all numbers less than 1e-08 as zero, by default. Thus, if you
           Gnuplot treats all numbers less than 1e-08 as zero, by default.  are trying to plot a collection of very small numbers, they may be plotted as
           Thus, if you are trying to plot a collection of very small  zero. Worse, if you're plotting on a log scale, they will be off scale. Or, if
           numbers, they may be plotted as zero. Worse, if you're plotting  the whole set of numbers is "zero", your range may be considered empty:
           on a log scale, they will be off scale. Or, if the whole set of  
           numbers is "zero", your range may be considered empty:  
   
   gnuplot> plot 'test1'
   Warning: empty y range [4.047e-19:3e-11], adjusting to [-1:1]
   gnuplot> set yrange [4e-19:3e-11]
   gnuplot> plot 'test1'
                 ^
   y range is less than `zero`
   
         gnuplot> plot 'test1'  The solution is to change gnuplot's idea of "zero":
         Warning: empty y range [4.047e-19:3e-11], adjusting to [-1:1]  gnuplot> set zero 1e-20
         gnuplot> set yrange [4e-19:3e-11]  
         gnuplot> plot 'test1'  
                      ^  
          y range is less than `zero`  
   
    The solution is to change gnuplot's idea of "zero":  For more information, "help set zero"
   
         gnuplot> set zero 1e-20  7.4 Gnuplot is plotting nothing when run via gnuplot <filename>! What can I do?
   
    For more information,  Put a pause -1 after the plot command in the file. On an X-Window System
   system, you can also use the -persist option, the X11 window is then not
   closed. Close the X11 window by typing "q" when the focus is on it.
   
         gnuplot> help set zero  7.5 My formulas are giving me nonsense results! What's going on?
   
    Q7.4: Gnuplot is plotting nothing when run via gnuplot <filename>!  Gnuplot does integer, and not floating point, arithmetic on integer
           What can I do?  expressions. For example, the expression 1/3 evaluates to zero. If you want
           Put a pause -1 after the plot command in the file.  floating point expressions, supply trailing dots for your floating point
   numbers. Example:
   
    Q7.5: My formulas are giving me nonsense results! What's going on?  gnuplot> print 1/3
           Gnuplot does integer, and not floating point, arithmetic on  
           integer expressions. For example, the expression 1/3 evaluates  
           to zero. If you want floating point expressions, supply  
           trailing dots for your floating point numbers. Example:  
   
   
         gnuplot> print 1/3  
                 0                  0
         gnuplot> print 1./3.  gnuplot> print 1./3.
                 0.333333                  0.333333
   
    This way of evaluating integer expressions is shared by both C and  This way of evaluating integer expressions is shared by both C and Fortran.
           Fortran.  
   
    Q7.6: My Linux gnuplot complains about a missing gnuplot_x11. What is  7.6 Set output 'filename' isn't outputting everything it should!
           wrong?  
           The binary gnuplot distribution from sunsite.unc.edu and its  
           mirrors in Linux/apps/math/gplotbin.tgz is missing one  
           executable that is necessary to access the x11 terminal. Please  
           install gnuplot from another Linux distribution, e.g.  
           Slackware.  
   
    Q7.7: set output 'filename' isn't outputting everything it should!  You need to flush the output with a closing 'set output'.
           You need to flush the output with a closing 'set output'.  
   
   Section 8: Credits  7.7 When using the LATEX-terminal, there is an error during the LATEX-run!
   
    This list was initially compiled by John Fletcher with contributions  Please upgrade to gnuplot 3.7. Some versions of its beta-release had a problem
    from Russell Lang, John Campbell, David Kotz, Rob Cunningham, Daniel  in the LATEX-terminal.
    Lewart and Alex Woo. Reworked by Thomas Koenig from a draft  
    by Alex Woo, with corrections and additions from Alex Woo, John  
    Campbell, Russell Lang, David Kotz and many corrections from Daniel  
    Lewart; Axel Eble and Jutta Zimmermann helped with the  
    conversion to HTML.  
   
   The LATEX2$\epsilon$ -core does no longer include the commands "
   Diamond" and "
   Box"; they are included in the latexsym package, which is part of the base
   distribution and thus part of any LaTeX implementation. Please do not forget to
   use this package.
   
   7.8 The exit command does not work as documented!
   
     Thomas Koenig, ig25@rz.uni-karlsruhe.de, 1994-03-28  This is a known bug and is fixed in the latest release. If you need the feature
   please upgrade to the latest release.
   
   7.9 I can't find the demos and example files at the URLs in the documentation!
   
   The examples have been removed from the NASA site. You can find the examples
   now at http://www.gnuplot.vt.edu/gnuplot/gpdocs. There you will find both PNG
   and GIF versions of the demo plots. There are some licensing problems with GIF
   images, so you should probably prefer the PNG ones. They also have the
   advantage to be much smaller in size.
   
   7.10 Calling gnuplot in a pipe or with a gnuplot-script doesn't produce a plot!
   
   You can call gnuplot by using a short Perl-script like the following:
   #!/usr/local/bin/perl -w
   open (GP, "|/usr/local/bin/gnuplot -persist") or die "no gnuplot";
   # force buffer to flush after each write
   use FileHandle;
   GP->autoflush(1);
   print GP,"set term x11;plot '/tmp/data.dat' with lines\n";
   close GP
   
   Gnuplot closes its plot window on exit. The close GP command is executed, and
   the plot window is closed even before you have a chance to look at it.
   
   There are three solutions to this: first, use the pause -1 command in gnuplot
   before closing the pipe. Second, close the pipe only if you are sure that you
   don't need gnuplot and its plot window anymore. Last, you can use the command
   line option -persist: this option leaves the X-Window System plot window open.
   
   8 Credits
   
   Gnuplot 3.7's main contributors are (in alphabetical order) Hans-Bernhard
   Broeker, John Campbell, Robert Cunningham, David Denholm, Gershon Elber, Roger
   Fearick, Carsten Grammes, Lucas Hart, Lars Hecking, Thomas Koenig, David Kotz,
   Ed Kubaitis, Russell Lang, Alexander Lehmann, Alexander Mai, Carsten Steger,
   Tom Tkacik, Jos Van der Woude, James R. Van Zandt, and Alex Woo.
   
   This list was initially compiled by John Fletcher with contributions from
   Russell Lang, John Campbell, David Kotz, Rob Cunningham, Daniel Lewart and Alex
   Woo. Reworked by Thomas Koenig from a draft by Alex Woo, with corrections and
   additions from Alex Woo, John Campbell, Russell Lang, David Kotz and many
   corrections from Daniel Lewart. Again reworked for gnuplot 3.7 by Alexander Mai
   and Juergen v.Hagen with corrections by Lars Hecking, Hans-Bernhard Broecker
   and other people.
   
   About this document ...
   
   Gnuplot FAQ
   
   This document was generated using the LaTeX2HTML translator Version 2002-2-1
   (1.70)
   
   Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit,
   University of Leeds.
   Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie
   University, Sydney.
   
   The command line arguments were:
   latex2html -split 0 -show_section_numbers -html_version 4.0 -nonavigation
   faq.tex
   
   The translation was initiated by Lars Hecking on 2002-12-10
   -------------------------------------------------------------------------------
   
   Lars Hecking 2002-12-10

Legend:
Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.3

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>