=================================================================== RCS file: /home/cvs/OpenXM_contrib/gnuplot/Attic/0FAQ,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.2 diff -u -p -r1.1.1.1 -r1.1.1.2 --- OpenXM_contrib/gnuplot/Attic/0FAQ 2000/01/09 17:00:48 1.1.1.1 +++ OpenXM_contrib/gnuplot/Attic/0FAQ 2000/01/22 14:15:46 1.1.1.2 @@ -1,1180 +1,1058 @@ -* Please note that this is not the current official FAQ since -* I have upgraded the info in answer 4.0 - dd -* Made more changes - lh +[next] [up] [previous] -Archive-name: graphics/gnuplot-faq -Version: Mon Sep 23 04:23:01 CES 1996 -Posting-frequency: every 14 days -URL: http://www.uni-karlsruhe.de/~ig25/gnuplot-faq/ + Gnuplot FAQ - comp.graphics.apps.gnuplot +Contents - comp.graphics.apps.gnuplot FAQ (Frequent Answered Questions) + * Contents + * Meta - Questions + o 0.1 Where do I get this document? + o 0.2 Where do I send comments about this document? + * 1. General Information + o 1.1 What is gnuplot? + o 1.2 How did it come about and why is it called gnuplot? + o 1.3 Does gnuplot have anything to do with the FSF and the GNU + project? + o 1.4 What does gnuplot offer? + o 1.5 Is gnuplot suitable for batch processing? + o 1.6 Can I run gnuplot on my computer? + o 1.7 Legalize it! + o 1.8 Is gnuplot Y2K compliant? + o 1.9 Where do I get further information? + * 2. Setting it up + o 2.1 What is the current version of gnuplot? + o 2.2 Where can I get gnuplot? + o 2.3 How do I get gnuplot to compile on my system? + o 2.4 What documentation is there, and how do I get it? + * 3. Working with it. + o 3.1 How do I get help? + o 3.2 How do I print out my graphs? + o 3.3 How do I include my graphs in ? + o 3.4 How do I post-process a gnuplot graph? + o 3.5 How do I change symbol size, line thickness and the like? + o 3.6 How do I generate plots in the GIF format? + o 3.7 Can I animate my graphs? + o 3.8 How do I plot implicit defined graphs? + * 4. Wanted features + o 4.1 What's new in gnuplot 3.7? + o 4.2 Does gnuplot have hidden line removal? + o 4.3 Does gnuplot support bar-charts/histograms/boxes? + o 4.4 Does gnuplot support pie charts? + o 4.5 Does gnuplot quarterly time charts? + o 4.6 Does gnuplot support multiple y-axes on a single plot? + o 4.7 Can I put multiple pages on one page? + o 4.8 Can I put both data files and commands into a single file? + o 4.9 Can I put Greek letters and super/subscripts into my labels? + o 4.10 Can I do 1:1 scaling of axes? + o 4.11 Can I put tic marks for x and y axes into 3d plots? + o 4.12 Does gnuplot support a driver for ? + o 4.13 Can I put different text sizes into my plots? + o 4.14 How do I modify gnuplot, and apply 'patches'? + o 4.15 How do I skip data points? + o 4.16 How do I plot every nth point? + o 4.17 How do I plot a vertical line? + * 5. Miscellaneous + o 5.1 I've found a bug, what do I do? + o 5.2 Can I use gnuplotroutines for my own programs? + o 5.3 What extensions have people made to gnuplot? Where can I get + them? + o 5.4 Can I do heavy-duty data processing with gnuplot? + o 5.5 I have ported gnuplotto another system, or patched it. What do + I do? + o 5.6 I want to help in developing the next version of gnuplot. What + can I do? + * 6. Making life easier + o 6.1 How do I plot two functions in non-overlapping regions? + o 6.2 How do I run my data through a filter before plotting? + o 6.3 How do I make it easier to use gnuplot with LATEX? + o 6.4 How do I save and restore my settings? + o 6.5 How do I plot lines (not grids) using splot? + o 6.6 How do I plot a function f(x,y) which is bounded by other + functions in the x-y plain? + o 6.7 How do I get rid of ? + o 6.8 How do I call gnuplot from my own programs? + o 6.9 What if I need h-bar (Planck's constant)? + * 7. Known Problems + o 7.1 Gnuplot is not plotting any points under X11! How come? + o 7.2 My isoline data generated by a Fortran program is not handled + correctly. What can I do? + o 7.3 Why does gnuplot ignore my very small numbers? + o 7.4 Gnuplot is plotting nothing when run via gnuplot ! + What can I do? + o 7.5 My formulas are giving me nonsense results! What's going on? + o 7.6 Set output 'filename' isn't outputting everything it should! + o 7.7 When using the LATEX-terminal, there is an error during the + LATEX-run! + o 7.8 The exit command does not work as documented! + o 7.9 I can't find the demos and example files at the URLs in the + documentation! + o 7.10 Calling gnuplot in a pipe or with a gnuplot-script doesn't + produce aplot! + * 8. Credits - This is the FAQ (Frequently Answered Questions) list of the - comp.graphics.apps.gnuplot newsgroup, which discusses the gnuplot - program for plotting 2D - and 3D - graphs. +Meta - Questions - Most of the information in this document came from public discussion - on comp.graphics.apps.gnuplot; quotations are believed to be in the - public domain. +0.1 Where do I get this document? - If you are reading this via WWW, and you can't access the individual - pages, please select here, then try again. +This document is posted about once every two weeks to the newsgroups +comp.graphics.apps.gnuplot . Its newest (plaintext) version is available via +anonymous ftp from ftp.ucc.ie in /pub/gnuplot/faq/gnuplot-faq.txt . - Here's a list of the questions. If you are looking for the answer for - a specific question, look for the string Qx.x: at the beginning of a - 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 +If you have access to the WWW, you can get the newest version of this +document from ~http://www.ucc.ie/gnuplot/gnuplot-faq.html . +Today's version is version Revision: 1.4, dated Date: 99/10/07 09:37:56 -Questions: +0.2 Where do I send comments about this document? - Section 0: Meta - Questions +Send comments, suggestions etc via email to the developer newsgroup +info-gnuplot-beta@Dartmouth.EDU and additionally to j.vonhagen@web.de . - * Q0.1: Where do I get this document? - * Q0.2: Where do I send comments about this document? +1. General Information - Section 1: General Information +1.1 What is gnuplot? - * Q1.1: What is gnuplot? - * Q1.2: How did it come about and why is it called gnuplot? - * Q1.3: Does gnuplot have anything to do with the FSF and the - 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? +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. - Section 2: Setting it up +This document deals with gnuplot Version 3.7 which is the latest official +release as of October 20, 1999. References to bug-fix versions or (recent) +beta versions are explicitly marked. - * Q2.1: What is the current version of gnuplot? - * Q2.2: Where can I get gnuplot? - * Q2.3: How do I get gnuplot to compile on my system? - * Q2.4: What documentation is there, and how do I get it? +1.2 How did it come about and why is it called gnuplot? - Section 3: Working with it +The authors of gnuplot are: Thomas Williams, Colin Kelley, Russell Lang, +Dave Kotz, John Campbell, Gershon Elber, Alexander Woo and many others. - * Q3.1: How do I get help? - * Q3.2: How do I print out my graphs? - * Q3.3: How do I include my graphs in ? - * Q3.4: How do I post-process a gnuplot graph? - * Q3.5: How do I change symbol size, line thickness and the - like? - * Q3.6: How do I generate plots in GIF format? +The following quote comes from Thomas Williams: - Section 4: Wanted features + I was taking a differential equation class and Colin was taking + Electromagnetics, we both thought it'd be helpful to visualize the + mathematics behind them. We were both working as sys admin for an + EE VLSI lab, so we had the graphics terminals and the time to do + some coding. The posting was better received than we expected, and + prompted us to add some, albeit lame, support for file data. - * Q4.0: What's new in gnuplot 3.7? - * 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 ? - * 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? + 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. - Section 5: Miscellaneous +1.3 Does gnuplot have anything to do with the FSF and the GNU project? - * Q5.1: I've found a bug, what do I do? - * Q5.2: Can I use gnuplot routines for my own programs? - * Q5.3: What extensions have people made to gnuplot? Where can I - get them? - * 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? +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. - Section 6: Making life easier +Gnuplot is freeware in the sense that you don't have to pay for it. However +it is not freeware in the sense that you would be allowed to distribute a +modified version of your gnuplot freely. Please read and accept the +Copyright file in your distribution. - * Q6.1: How do I plot two functions in non-overlapping regions? - * Q6.2: How do I run my data through a filter before plotting? - * Q6.3: How do I make it easier to use gnuplot with LaTeX? - * Q6.4: How do I save and restore my settings? - * Q6.5: How do I plot lines (not grids) using splot? - * Q6.6: How do I plot a function f(x,y) which is bounded by - other functions in the x-y plain? - * Q6.7: How do I get rid of ? - * Q6.8: How do I call gnuplot from my own programs ? +1.4 What does gnuplot offer? - Section 7: Known Problems + * Plotting of two-dimensional functions and data points in many different + styles (points, lines, error bars) + * computations in integer, float and complex arithmetic + * 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 - * Q7.1: Gnuplot is not plotting any points under X11! How come? - * Q7.2: My isoline data generated by a Fortran program is not - handled correctly. What can I do? - * Q7.3: Why does gnuplot ignore my very small numbers? - * Q7.4: Gnuplot is plotting nothing when run via gnuplot - ! 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! +1.5 Is gnuplot suitable for batch processing? - Section 8: Credits +Yes. You can read in files from the command line, or you can redirect your +standard input to read from a file. Both data and command files can be +generated automatically, from data acquisition programs or whatever else you +use. - Section 0: Meta-Questions. +1.6 Can I run gnuplot on my computer? - Q0.1: Where do I get this document? - 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. +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. - If you have access to the WWW, you can get the newest version - of this document from - http://www.uni-karlsruhe.de/~ig25/gnuplot-faq/ +Please notify the FAQ-maintainer of any further ports you might be aware of. - Q0.2: Where do I send comments about this document? - Send comments, suggestions etc. via e-mail to Thomas - Koenig, Thomas.Koenig@ciw.uni-karlsruhe.de or - ig25@dkauni2.bitnet. +You should be able to compile the gnuplot source more or less out of the box +on any reasonable standard (ANSI/ISO C, POSIX) environment. +1.7 Legalize it! - Section 1: General Information +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. - Q1.1: What is gnuplot? - 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. +Citing from the README of a mathematical subroutine package by R. Freund: - Q1.2: How did it come about and why is it called gnuplot? - The authors of gnuplot are: + For all intent and purpose, any description of what the codes are + doing should be construed as being a note of what we thought the + codes did on our machine on a particular Tuesday of last year. If + you're really lucky, they might do the same for you someday. Then + again, do you really feel *that* lucky? - Thomas Williams, Colin Kelley, Russell Lang, Dave Kotz, John - Campbell, Gershon Elber, Alexander Woo and many others. +1.8 Is gnuplot Y2K compliant? - The following quote comes from Thomas Williams: +Gnuplot's compliance depends in part on the compliance of the underlying +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. - I was taking a differential equation class and Colin was taking - Electromagnetics, we both thought it'd be helpful to visualize the - mathematics behind them. We were both working as sys admin for an - EE VLSI lab, so we had the graphics terminals and the time to do - some coding. The posting was better received than we expected, and - prompted us to add some, albeit lame, support for file data. +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. - 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. +Gnuplot3.7 also allows the use of time/date data as variables, but the user +has complete control over the input format of the data and the output format +of the tic labels - the same 2-digit "%y" (interpreted as 1900+) and 4-digit +"%Y" formats are both available. But again, these are user-specifiable, so +if there is a Y2K problem here, it is the responsibility of the user. - Q1.3: Does gnuplot have anything to do with the FSF and the GNU - project? - Gnuplot is neither written nor maintained by the FSF. It is not - covered by the General Public License, either. +Of course, gnuplot is built by executing a makefile, which may well be +date-dependent. So if the operating system has a Y2K problem, the process of +building a new executable of gnuplot may be affected. But that wouldn't be a +problem with gnuplot per se. - However, the FSF has decided to distribute gnuplot as part of - the GNU system, because it is useful, redistributable software. +IMPORTANT NOTICE - Q1.4: What does gnuplot offer? +As of gnuplot beta version 3.7.0.9, the interpretation of the "%y" two digit +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. - + Plotting of two-dimensional functions and data points in many - 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 +1.9 Where do I get further information? - Q1.5: Is gnuplot suitable for batch processing? - Yes. You can read in files from the command line, or you can - redirect your standard input to read from a file. Both data and - command files can be generated automatically, from data - acquisition programs or whatever else you use. +The following sites have more information about gnuplot. - Q1.6: Can I run gnuplot on my computer? - 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.comnets.rwth-aachen.de/doc/gnu/gnuplot37/gnuplot.html an + online documentation in html-format + * ~http://www.usf.uni-osnabrueck.de/ breiter/tools/gnuplot/index.en.html + has many links to many features and add-ons for gnuplot + * ~http://web.math-cs.uni.edu/cs/Help/gnuplot/TOC.html contains an online + tutorial + * ~http://brian.me.tufts.edu/GnuplotInLaTeX/ contrains infos abount + gnuplot and LATEX + * ~http://www.eso.org/ ndevilla/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 +Some documentation is available in other languages than English. Those +include: - Section 2: Setting it up + * ~http://mucha.obspm.fr/ grouss/gnuplt/gnuplot.html contient des + informations dans la langue de Molière: les 1ers pas avec gnuplot, + malheureusement seulement version 3.5 + * ~http://www.al.lu/euler/gnuplot.shtml encore des informations en langue + française avec possibilité de téléchargement des versions binaires - Q2.1: What is the current version of gnuplot? - The current version of gnuplot is 3.7, which has many - improvements over 3.5 +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.2: Where can I get gnuplot? - 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. + * ~http://www.cs.dartmouth.edu/gnuplot_info.html slightly outdated site + for the 3.6 beta version, but also a web-gateway to the users' + newsgroup + * ~http://members.theglobe.com/gnuplot/ basically same as above. + * ~http://users.ece.gatech.edu/ schooley/gnuplot.html contains a + Macintosh version based on 3.6 beta 322 - The official distribution site for the gnuplot source is - ftp.dartmouth.edu [129.170.16.4, soon to be 129.170.8.11], - the file is called /pub/gnuplot/gnuplot-3.7.tar.Z. Official - mirrors of that distribution are (for Australia) - ftp.monash.edu.au [130.194.11.18] and (for Europe) - ftp.irisa.fr [131.254.254.10]. You can also get it from your - friendly neighbourhood comp.sources.misc archive. +The following sites were said to exist, howevere they seem to be down right +now. - MS-DOS and MS-Windows binaries are available from + * ~http://www.geocities.com/SiliconValley/Foothills/6647/ the copyright + statement and some binaries contains ads + * ~http://www.delorie.com/gnu/docs/gnuplot/gplot_toc.html doesn't work + * picard.tamu.edu in /pub/gnuplot gives a tutorial + * ~http://feff.phys.washington.edu/ ravel/gnuplot has a new mode for the + users of (X)Emacs - + oak.oakland.edu (North America) [141.210.10.117] as - /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. +2. Setting it up - The files are: gpt35doc.zip, gpt35exe.zip, gpt35src.zip and - gpt35win.zip. +2.1 What is the current version of gnuplot? - There is a special MS-DOS version for 386 or better processors; - it is available from the official gnuplot sites as DOS34.zip. +The current version of gnuplot is 3.7, which has many improvements over 3.5. +3.6 was never released to avoid confusions with the beta versions. - OS/2 2.x binaries are at ftp-os2.nmsu.edu [128.123.35.151], - in /os2/2.x/unix/gnuplt35.zip. - Amiga sources and binaries are available from ftp.wustl.edu - [128.252.135.4] as /pub/aminet/util/gnu/gnuplot-3.5.lha; there - are numerous mirrors of this distribution, for example - ftp.uni-kl.de, oes.orst.edu or ftp.luth.se. +2.2 Where can I get gnuplot? - The NeXTSTEP front end can be found at - ftp://next-ftp.peak.org/pub/next/binaries/plotting/ as - Gnuplot1.2_bin.tar.Z. +The source distribution ("gnuplot-3.7.tar.gz" or a similar name) is +available from the official distribution site and its mirrors. - A version for OS-9/68K can be found at cabrales.cs.wisc.edu - [128.105.36.20] as /pub/OSK/GRAPHICS/gnuplot32x.tar.Z; it - includes both X-Windows and non - X-windows versions. +The main server is ftp.ucc.ie in /pub/gnuplot/ . This server is mirrored by +several others, among those are - There is a version for the Macintosh at - ftp://ftp.ee.gatech.edu/pub/mac/gnuplot/ which includes - binaries for 68000-based Macs with and without FPU and native - support for PowerMacs. + * mirror.aarnet.edu.au in /pub/gnuplot/ + * ftp.dartmouth.edu in /pub/gnuplot/ + * ftp.irisa.fr in /pub/gnuplot/ + * ftp.gnuplot.vt.edu in /pub/gnuplot/ - Versions for the Atari ST and TT, which include some GEM - windowing support, are available from - ftp://ftp.uni-kl.de/pub/atari/graphics/, as gplt35st.zip - and gplt35tt.zip. They work best under MiNT. +You can also have a look at the following WWW-pages which provide a source +to obtain gnuplot: - Executable files, plus documentation in Japanese, exist for the - X680x0 on - ftp://ftp.csis.oita-u.ac.jp/pub/x68k/fj.binaries.x68000/vol - 2. + * ~http://members.theglobe.com/gnuplot/ + * ~http://www.geocities.com/SiliconValley/Foothills/6647/ + * ~http://mirror.aarnet.edu.au/pub/gnuplot/ - People without ftp access can use an ftp-mail server; send a - message saying 'help' to bitftp@pucc.bitnet (for BITNET only) - or to ftpmail@ftp.dartmouth.edu. +The current version for the Macintosh is 2.04b, based on gnuplot 3.5 +pre3.6beta338, and is available from - For a uuencoded copy of the the gnuplot sources (compressed tar - file), send this as the body of a message to - ftpmail@ftp.dartmouth.edu: + * ~http://users.ece.gatech.edu/ schooley/ . +Unfortunately, this version does not seem to be maintained anymore. - open - cd pub/gnuplot - mode binary - get gnuplot3.5.tar.Z - quit +Source and binary distributions for the Amiga are available on Aminet +ftp.wustl.edu in aminet/ and its mirrors, for example ftp.uni-kl.de, +oes.orst.edu or ftp.luth.se. - 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 +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 - downloading things. You can use archie for this. See if an - 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. +The NeXTSTEP front end can be found at next-ftp.peak.org in +/pub/next/binaries/plotting/Gnuplot1.2_bin.tar.Z . - Q2.3: How do I get gnuplot to compile on my system? - As you would any other installation. Read the files README and - README.Install, edit the Makefile according to taste, and run - make or whatever is suitable for your operating system. +A version for OS-9/68K can be found at cabrales.cs.wisc.edu in +/pub/OSK/GRAPHICS/gnuplot32x.tar.Z ; it includes both an X-Window Systems +and a non - X-Window Systems version. - If you get a complaint about a missing file libplot.a or - something similar when building gnuplot for X11, remove - -DUNIXPLOT from the TERMFLAGS= line, remove -lplot from the - DTBS= line and run again. If you are making X11 on a sun, type - 'make x11_sun'. +Versions for the Atari ST and TT, which include some GEM windowing support, +are available from ftp.uni-kl.de in /pub/atari/graphics/ , as gplt35st.zip +and gplt35tt.zip. They work best under MiNT. - For compiling gnuplot under Irix 5.2 and Irix 5.3, there is a - patch in the file lvs.zip in the contrib directory at - ftp.dartmouth.edu. +Executable files, plus documentation in Japanese, exist for the X680x0 on +ftp.csis.oita-u.ac.jp in /pub/x68k/fj.binaries.x68000/vol2 . - Q2.4: What documentation is there, and how do I get it? - The documentation is included in the source distribution. Look - at the docs subdirectory, where you'll find +It is a good idea to look for a nearby ftp site when downloading things. You +can use archie for this. See if an 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. - + a Unix man page, which says how to start gnuplot - + a help file, which also can be printed as a manual - + a tutorial on using gnuplot with LaTeX - + a quick reference summary sheet for TeX only +If you can't locate a working archie server, you can use other web-based +search engines for searching for gnuplot. One of these would be Lycos at +~http://ftpsearch.lycos.com/ . - PostScript copies of the documentation can be ftp'd from - ftp.dartmouth.edu, in pub/gnuplot, as manual.ps.Z and - tutorial.ps.Z +As of June 1999, the gnuplot distribution is also mirrored at the +Comprehensive TeX Archive Network (CTAN) in the graphics/gnuplot directory. +See - Andy Liaw and Dick Crawford have written a 16-page user's - 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. + * ~http://www.ctan.org/ . - At the same site, there's a two- page instruction sheet for the - enhpost PostScript driver (see Q4.6 ) as enhpost.guide.ps - and a short guide to gnuplot PostScript files, as gp-ps.doc. +Bug fixes can also be found at gnuplot distribution sites in the patches +directory. - A Chinese translation of the gnuplot manual can be found on - ftp://servers.nctu.edu.tw/misc/environment/NCTU_EV/classnot - e/gnuplot.ps.gz . +2.3 How do I get gnuplot to compile on my system? - There is a WWW hompepage for gnuplot at - http://www.cs.dartmouth.edu/gnuplot_info.html, which - includes the reference manual and a demo. +As you would any other installation. Read the files README.1ST and README. - There are two more Chinese documents about gnuplot: a 72 - page - User's guide - ftp://phi.sinica.edu.tw/pub/aspac/doc/94/94002.ps.gz and a - 28 - page Touring Guide - ftp://phi.sinica.edu.tw/pub/aspac/doc/95/95006.ps.gz. Both - documents are in PostScript format and gzipped. +For Unix, use configure and make. For DOS, if you are using bash and DJGPP, +you can just run djconfig.sh. For other platforms, copy the relevant +makefile from config/ to src, change to src and run make. +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? - Give the 'help' command at the initial prompt. After that, keep - looking through the keywords. Good starting points are 'plot' - and 'set'. + * a Unix man page, which says how to start gnuplot + * a help file, which also can be printed as a manual + * a tutorial on using gnuplot with LATEX + * 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 - ideas. +The documentation is built during the installation if you have LATEX +installed on your system, look in the directories docs and tutorial. - Ask your colleagues, the system administrator or the person who - set up gnuplot. +Documentation about gnuplot is available in the most common formats at the +gnuplot distribution sites in the files gpdoc.zip and gpdoc2.zip. - Post a question to comp.graphics.apps.gnuplot or send mail - 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. +3. Working with it. - Q3.2: How do I print out my graphs? - 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. +3.1 How do I get help? - As an example, the following prints out a graph of sin(x) on a - Unix machine running the X Window system. +Read this document. +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) - 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> +Read the manual, if you have it. - Q3.3: How do I include my graphs in ? - 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. +Look through the demo subdirectory; it should give you some ideas. - Details depend on the kind of word processor you use; use "set - term" to get a list of available file formats. +Ask your colleagues, the system administrator or the person who set up +gnuplot. - Many word processors can use Encapsulated PostScript for - graphs. This can be generated by the "set terminal postscript - eps" command. Most MS-DOS word processors understand HPGL - (terminal type hpgl). +If all these fail, please upgrade to the newest version of gnuplot or urge +your system-administrator to do so. Then post a question to +comp.graphics.apps.gnuplot or send mail to the gatewayed mailing list +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. - 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. +3.2 How do I print out my graphs? - If nothing else helps, try using the pgm or ppm format and - converting it to a bitmap format your favourite word processor - can understand. An invaluable tool for this is Jef Poskanzer's - PBMPLUS package. +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. - The PBMPLUS package is available in the contrib distribution - for the X Window System. The original site for this is - 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/. +As an example, the following prints out a graph of sin(x) on a Unix machine +running the X-Window System. - The most recent release of pbm by the author is dated December - 91 and is called pbmplus10dec91.tar.Z +gnuplot> plot [-6:6] sin(x) +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 - that is not maintained by the author called netpbm, with the - newest version called netpbm-7dec1993.tar.gz. +In Microschrott Windows you click in the upper left corner of the graph +window and print directly from there. - Check archie (see Q2.2 ) for an archive site near you. +3.3 How do I include my graphs in ? - Q3.4: How do I post-process a gnuplot graph? - This depends on the terminal type you use. +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. Vector formats should be prefered, as +you can scale your graph later to the right size. - You can use the terminal type fig (you may need to recompile - gnuplot to enable this terminal type, by putting #define FIG - into ), and use the xfig drawing program to edit the - plot afterwards. +Details depend on the kind of word processor you use; use "set term" to get +a list of available file formats. - For PostScript output, you may be able to use the pstotgif - script (which calls GhostScript) to convert PostScript into the - format of the tgif drawing program. Tgif is also able to save - in PostScript format. +Many word processors can use Encapsulated PostScript for graphs. This can be +generated by the "set terminal postscript eps" command. Most MS-DOS word +processors understand HPGL (terminal type hpgl). - Both tgif and xfig can be obtained from the X Window contrib - distribution (see Q3.3). +With TeX, it depends on what you use to print your dvi files. If you use +dvips or dvi2ps, you can use Encapsulated PostScript. For emTeX (popular for +MS-DOSns OS/2), you can use emTeX, otherwise use the LATEXterminal type, +which generates a picture environment. - Another possibility for modifying PostScript output appears to - be IslandDraw, a commercial drawing program for UNIX - workstations. +If nothing else helps, try using the pgm or ppm format and converting it to +a bitmap format your favourite word processor can understand. An invaluable +tool for this is Jef Poskanzer's PBMPLUS package. - For Windows, there is another alternative, PageDraw. It can - post-process AI (Adobe Illustrator) files, and has a converter - from PostScript to AI. It can be downloaded from - http://www.wix.com/PageDraw/. +The PBMPLUS package is available in the contrib distribution for the +X-Window System. The original site for this is ftp.x.org in /contrib/ . +There are many mirrors, e.g. ftp.tu-darmstadt.de in /pub/X11/contrib/ or . +sunsite.unc.edu in /pub/X11/contrib/ . - Q3.5: How do I change symbol size, line thickness and the like? - Again, this depends on the terminal type. For PostScript, you - 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. +The most recent release of pbm by the author is dated December 91 and is +called pbmplus10dec91.tar.Z. - Q3.6: How do I generate plots in GIF format? - In gnuplot version 3.5, use the pbm terminal and use the - PBMPLUS package or other utilities to convert the resulting - bitmap (see Q 3.3 for how to get the PBMPLUS package). +There is new version including lots of patches from the net that is not +maintained by the author called netpbm, with the newest version called +netpbm-1mar1994.tar.gz. - From 3.7 on, there is a gif terminal. +Check archie (see Q2.2) 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? - Please refer to the NEWS file in the source distribution. +This depends on the terminal type you use. - Q4.1: Does gnuplot have hidden line removal? - Version 3.5 supports hidden line removal on all platforms - except MS-DOS; use the command +You can use the terminal type fig (you may need to recompile gnuplot to +enable this terminal type, by putting #define FIG into ), and use +the xfig 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 - support hidden line removal on MS-DOS as well. Version 3.2 - supports limited hidden line removal. +Pstoedit can convert Postscript into a wide variety of formats. Pstoedit is +available a ~http://www.geocities.com/SiliconValley/Nework/1958/pstoedit/ . - Q4.2: Does gnuplot support bar-charts/histograms/boxes? - 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. +Gimp may be able to post-process pixel graphics generated with gnuplot. - Q4.3: Does gnuplot support multiple y-axes on a single plot? - Yes, with two unofficial mods, multiplot.shar and borders.shar. - They can be obtained from - ftp://ftp.dartmouth.edu/pub/gnuplot/contrib/multi_woo.zip - or ftp://ftp.cygnus.edu/incoming/gpx38.zip. +In general, you should use a vector graphics program to post-process vector +graphic formats, and pixel based programs for pixel graphics. - 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? - Yes, with the multiplot.shar mod, or if you are running gnuplot - 3.7. If you are using PostScript output, check out mpage, which - can be ftp'd from ftp.eng.umd.edu:pub/misc/mpage-2.tar.Z +Again, this depends on the terminal type. For PostScript, you can edit the +generated PostScript file. An overview of what means what in the PostScript +files gnuplot generates can be found at picard.tamu.edu in /pub/gnuplot/ as +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? - This feature is in gnuplot 3.7. +3.6 How do I generate plots in the GIF format? - Q4.6: Can I put Greek letters and super/subscripts into my labels? - You might try using the LaTeX terminal type and putting text - like \alpha_{3} into it. +If gnuplot was compiled with the external GD library, there is a gif +terminal. - David Denholm has written a PostScript terminal which allows - for super/and subscripts, such as a^x or {/Symbol a }. Ftp to - sotona.phys.soton.ac.uk [152.78.192.42] and get enhpost.trm, - written by David Denholm and Matt Heffron. To install it, - follow the instructions at the top of the file, then recompile. - enhpost is also included in gnuplot 3.7. +As of version 1.6, gd library dropped support for gif in favour of the +superior png format. For those who absolutely need gif support in gnuplot, +we are providing older versions of gd library at the gnuplot distribution +sites which are free of Unisys patented code. Please read also the file +README a the ftp-sites. - Q4.7: Can I do 1:1 scaling of axes? - Not easily in 3.5; in 3.7, you can use "set size square". +3.7 Can I animate my graphs? - Q4.8: Can I put tic marks for x and y axes into 3d plots? - In version 3.5, you can; use the "with boxes" option. +First have a look at animate.dem in the demo directory of gnuplot. +Basically, animated graphs are a sequence of plots in a suitable format. - Q4.9: Does gnuplot support a driver for ? - To see a list of the available graphic drivers for your - installation of gnuplot, type "set term". +Then have a look at the tool whirlgif 3.04, available at +~http://www.danbbs.dk/ dineo/whirlgif . It reads run-length encoded gifs and +packs them into a minimal animation. On the web-pages you will find a manual +and an example. - Some graphics drivers are included in the normal distribution, - but are uncommented by default. If you want to use them, you'll - have to change ~gnuplot/term.h, and recompile. +You can also write a small script to get gnuplot to output a family of GIF +files, then have it execute some animator such as gifsicle: +~http://http://www.lcdf.org/ eddietwo/gifsicle or gifmerge +~http://http://the-labs.com/GIFMerge - Q4.10: Can I put different text sizes into my plots? - 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. +mpeg_encode will encode a sequence of images into the mpeg-format. - Q4.11 How do I modify gnuplot, and apply 'patches'? - For this, you will need to recompile gnuplot. +3.8 How do I plot implicit defined graphs? - Modifications people make are either done by replacing files, - such as terminal drivers, or by 'patching'. If a file is a - replacement, it will probably tell you in its README or in the - lines at the beginning. +Implicit graphs or curves cannot be plotted directly in gnuplot. However +there is a workaround. - To patch a file, you need Larry Wall's patch utility. On many - 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. +gnuplot> # as example. Place your definition in the following line +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 - Q4.12 How do I skip data points? - By specifying ? as a data value, as in +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. +4. Wanted features - 1 2 - 2 3 - 3 ? - 4 5 +4.1 What's new in gnuplot 3.7? - Q4.13 How do I plot every nth point? - You can apply the patch point_skip from the contrib section - (see Q5.3 or, assuming you have awk installed on your - system, you can use the following line: +Too many things to be named here. Please refer to the NEWS file in the +source distribution. +4.2 Does gnuplot have hidden line removal? - gnuplot> plot "< awk '{if(NR%5==0)print}' file.dat" +Version 3.7 supports hidden line removal on all platforms; use the command +set hidden3d. - plots every 5th line, and +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 '$0 !~ /^#/ {if(NR%40==0)print $1, $4}' file.dat" +4.3 Does gnuplot support bar-charts/histograms/boxes? - plots every 40th line while skipping commented lines. +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 . +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 . - Section 5: Miscellaneous +4.4 Does gnuplot support pie charts? - Q5.1: I've found a bug, what do I do? - First, try to see whether it actually is a bug, or whether it - is a feature which may be turned off by some obscure set - - command. +It's not possible in gnuplot, but have a look at +~http://www.usf.uni-osnabrueck.de/ breiter/tools/piechart/piecharts.en.html - Next, see wether you have an old version of gnuplot; if you do, - chances are the bug has been fixed in a newer release. +4.5 Does gnuplot quarterly time charts? - 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 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. +It's not possible in gnuplot, but have a look at +~http://ricardo.ecn.wfu.edu/ cottrell/qplot . The corresponding file +qplot.zip can be obtained from the contrib directory on any gnuplot server. - Q5.2: Can I use gnuplot routines for my own programs? - Yes. John Campbell 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. +4.6 Does gnuplot support multiple y-axes on a single plot? - Q5.3: What extensions have people made to gnuplot? Where can I get - them? - __Extensions are available from - ftp://ftp.dartmouth.edu/pub/gnuplot/contrib/ . It contains - the following files: +Yes. You can have 2 x- and 2 y-axes per plot. See "plot". - Point Skips +4.7 Can I put multiple pages on one page? - + _Data Filtering_ Instead of just having two params - 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, +Yes. "set multiplot" -gnuplot> plot "< awk '{if(NR%5==0)print$0}' file.dat" - From: James Darrell McCauley, mccauley@ecn.purdue.edu - + _New Xlib mods._ From: gregg hanna - (gregor@kafka.saic.com) +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. - Vectors and Arrows - + _Program to convert lines to vectors_ This program turns - line segments into line segments with a half-arrow at the - head: by uncommenting two lines below, the arrowhead will be - a triangle. optional arguments: size angle where size is a - fraction of each vector's magnitude and angle is in degrees - all data taken from standard input, and output to standard - output. typical invocation: +4.8 Can I put both data files and commands into a single file? -arrow 0.2 15 vector.heads - 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) +This feature is in gnuplot 3.7 when using the set multiplot command. - Histograms and Pie Charts - + _Histogram C program_ The short C program below is a - 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 +4.9 Can I put Greek letters and super/subscripts into my labels? - !histogram < datain > tmp; - plot "tmp" with impulses - 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) +You might try using the LATEXterminal type and putting text like +"\alpha_{3}" into it. - Interprocess Communications - + _Notes of Windows Hooks_ From: Maurice - 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) +The enhanced option in the postscript terminal is also able to use sub- and +superscripts. - Multiple logical plots on a single page - + _Gawk script for multiple encapsulated postscript on a - 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 +If you include your gnuplot-graphs into a LATEX document you can use the +LATEX-package psfrag to typeset any characters into your graphs. - lvs.zip - 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. +4.10 Can I do 1:1 scaling of axes? - Miscellaneous Mods - + _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 +Use "set size square". - Other Operationing Systems - + _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_ +4.11 Can I put tic marks for x and y axes into 3d plots? +Use the "with boxes" option. - Q5.4: Can I do heavy - duty data processing with gnuplot? - 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. +4.12 Does gnuplot support a driver for ? - Carsten Grammes has written a fitting program which goes - together with gnuplot; it is called gnufit and is available - 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. +To see a list of the available graphic drivers for your installation of +gnuplot, type "set term". - Michael Courtney has written a program called lsqrft, which - uses the Levenberg - Marquardt - Algorithm for fitting data to - a function. It is avialiable from ftp.cdrom.com as - /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. +Some graphics drivers are included in the normal distribution, but are +uncommented by default. If you want to use them, you'll have to change + gnuplot/term.h, and recompile. - You might also want to look at the applications developed by - 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. +4.13 Can I put different text sizes into my plots? - You can also try pgperl, an integration of the PGPLOT plotting - package with Perl 5. Information can be found at - 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/. +Some terminals, like the postscript terminal can, others can't. Look at the +help for the different terminals. - Another possibility is Octave. To quote from its README: Octave - is a high-level language, primarily intended for numerical - computations. It provides a convenient command line interface - for solving linear and nonlinear problems numerically. +4.14 How do I modify gnuplot, and apply 'patches'? - The latest released version of Octave is always available via - anonymous ftp from bevo.che.wisc.edu in the directory - /pub/octave. +For this, you will need to recompile gnuplot. - Q5.5: I have ported gnuplot to another system, or patched it. What do - I do? - If your patch is small, mail it to bug-gnuplot@dartmouth.edu, - 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 - :-) +Modifications people make are either done by replacing files, such as +terminal drivers, or by 'patching'. If a file is a replacement, it will +probably tell you in its README or in the lines at the beginning. - If your modifications are extensive (such as a port to another - system), upload your modifications to - ftp://ftp.dartmouth.edu/pub/dropoff. Please drop a note to - David.Kotz@dartmouth.edu, the maintainer of the gnuplot - subdirectory there, plus a note to bug-gnuplot@dartmouth.edu. +To patch a file, you need Larry Wall's patch utility. On many 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. - Q5.6: I want to help in developing gnuplot 3.7. What can I do? - Join the gnuplot beta test mailing list by sending a mail - containing the line +4.15 How do I skip data points? +By specifying ? as a data value, as in -subscribe info-gnuplot-beta + 1 2 + 2 3 + 3 ? + 4 5 - in the body (not the subject) of the mail to Majordomo@Dartmouth.EDU. +4.16 How do I plot every nth point? +This can be specified with the various options for the command "plot". - Section 6: Making life easier +4.17 How do I plot a vertical line? - Q6.1: How do I plot two functions in non - overlapping regions? - Use a parametric plot. An example: +Depending on context, the main methods are: + * set arrow .... .... nohead where you have to compute explicitly the + start and the end of the arrow. + * generate (inlined) datapoints and plot them + * switch to parametric mode - set parametric - 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" +5. Miscellaneous - Q6.2: How do I run my data through a filter before plotting? - If your system supports the popen() function, as Unix does, you - should be able to run the output through another process, for - example a short awk program, such as +5.1 I've found a bug, what do I do? +First, try to see whether it actually is a bug, or whether it is a feature +which may be turned off by some obscure set-command. - gnuplot> plot "< awk ' { print $1, $3/$2 } ' file.in" +Next, see whether you have an old version of gnuplot; if you do, chances are +the bug has been fixed in a newer release. - Unfortunately, in 3.2, there is a rather short limitation on the - 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. +Fixes for bugs reported since the release of the current version are held in +the patches directory at gnuplotdistribution sites. Before submitting a bug +report, please check whether the bug in question has already been fixed. - As of version 3.4, gnuplot includes the thru - keyword for the - plot command for running data files through a gnuplot - defined - function. +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 . - You can also get divhack.patch from - sotona.phys.soton.ac.uk[152.78.192.42] via anonymous ftp. It - allows expressions of the kind +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 gnuplotrelated 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 gnuplotif at all possible. +5.2 Can I use gnuplotroutines for my own programs? - gnuplot> plot "datafile" using A:B:C +Yes. John Campbell jdc@nauvax.ucc.nau.edu has written gplotlib, a version of +gnuplotas C subroutines callable from a C program. This is available as +gplotlib.tar.Z at ftp.nau.edu in /pub/gplotlib.tar.Z . This library has been +updated to be compatible with version 3.5. - where A,B,C,... are now either a column number, as usual, or an - arbitrary expression enclosed in ()'s, and using $1,$2,etc to - access the data columns. +On systems supporting the pipes, you can pipe commands to gnuplotfrom other +programs. - Q6.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 [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. +5.3 What extensions have people made to gnuplot? Where can I get them? - Q6.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. +Extensions are available from ftp.ucc.ie in /pub/gnuplot/contrib/ - Q6.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. +Some extensions available: - Q6.6: How do I plot a function f(x,y) which is bounded by other - functions in the x-y plain? - An example: + * barchart_via_fig: awk scripts to produce barcharts with filled boxes. + * 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 . +5.4 Can I do heavy-duty data processing with gnuplot? - f(x,y) = x**2 + y **2 - 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) +gnuplotalone 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 gnuplotas 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. - Q6.7: How do I get rid of ? - Usually, there is a set command to do this; do a +Carsten Grammes has written a fitting program which has been merged into +gnuplot3.7. +Michael Courtney has written a program called lsqrft, which uses the +Levenberg-Marquardt - Algorithm for fitting data to a function. It is +available from hobbes.nmsu.edu in /pub/os2/apps/analysis/lsqrft15.zip ; +sources, which should compile on Unix, and executables for MS-DOS and OS/2 +are available. There is an interface to the OS/2 presentation manager. - gnuplot> ?set no +You might also want to look at the applications developed by the Software +Tools Group (STG) at the National Center for Supercomputing Applications. +Ftp to ftp.ncsa.uiuc.edu and get the file README.BROCHURE for more +information. - for a short overview. +You can also try pgperl, an integration of the PGPLOT plotting package with +Perl 5. Information can be found at +~http://www.ast.cam.ac.uk/AAO/local/www/kgb/pgperl , the source is available +from ftp.ast.cam.ac.uk in /pub/kgb/pgperl/ or linux.nrao.edu in +/pub/packages/pgperl/ . - Q6.8: How do I call gnuplot from my own programs? - Here's code which works for a UNIX system, using (efficient) - named pipes. +Another possibility is Octave. To quote from its README: Octave 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 from ~http://www.che.wisc.edu/octave/ and via anonymous ftp +from bevo.che.wisc.edu in /pub/octave . +5.5 I have ported gnuplotto another system, or patched it. What do I do? -#include -#include -#include -#include -#include -#include +If your patch is small, mail it to info-gnuplot-beta@dartmouth.edu , with a +thorough description of what the patch is supposed to do, which version of +gnuplotit 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. -#define PANIC(a) do { \ - perror(a); \ - if (temp_name) unlink(temp_name);\ - exit(1);\ - } while(0) +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 upload patches. Send a note to info-gnuplot-beta@dartmouth.edu on where +to find the patch, what it is supposed to do, which version of gnuplotit is +to be applied against. For the time being (summer 1999) you can also send +the patch to gnuplot@ftp.ucc.ie . -int main() { - FILE *command,*data; - char *temp_name = NULL; - double a,b; - int i; +5.6 I want to help in developing the next version of gnuplot. What can I do? - if ((temp_name = tmpnam((char *) 0)) == 0) PANIC("tmpnam failed"); - if(mkfifo(temp_name, S_IRUSR | S_IWUSR) != 0) PANIC("mkfifo failed"); - command = popen("gnuplot","w"); - fprintf(command,"plot \"%s\" with lines\n",temp_name); fflush(command); - 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(); +Join the gnuplotbeta 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(command,"plot \"%s\" with lines\n",temp_name); fflush(command); - data = fopen(temp_name,"w"); - for (i=0; i<20; i++) { - a = i/10.0; - b = cos(a); - fprintf(data,"%f %f\n",a,b); - } - fclose(data); - fprintf(stderr,"press enter to continue..."); fflush(stderr); - getchar(); - pclose(command); - unlink(temp_name); - return 0; -} +6. Making life easier - Here's code for OS/2, again using named pipes; I'm unable to check - this out myself. This code is care of fearick@physci.uct.ac.za - (Roger Fearick). +6.1 How do I plot two functions in non-overlapping regions? +Use a parametric plot. An example: -#include -#define INCL_DOS -#define INCL_DOSPROCESS -#define INCL_DOSNMPIPES -#include +gnuplot> set parametric +gnuplot> a=1 +gnuplot> b=3 +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" -main() - { - HPIPE hpipe ; - FILE *hfile, *hgnu ; - /* create a named pipe. Use NP_WAIT so that DosConnect... - blocks until client (gnuplot) opens, and client reads - 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" ) ; +You can also use gnuplot's ability to ignore mathematically undefined +expressions: the expression 1/0 is silently ignored, thus a construction +like - /* start gnuplot; use unbuffered writes so we don't need to - flush buffer after a command */ - hgnu = popen( "gnuplot", "w" ) ; - setvbuf( hgnu, NULL, _IONBF, 0 ) ; +gnuplot> set xran [-10:10] +gnuplot> plot (abs(x)>0.5?1/0: x**2) - /* plot a set of data */ +plots a quadratic function only for |x| < 0.5. - fprintf( hgnu, "plot '/pipe/gtemp'\n" ) ; /* issue plot command */ - DosConnectNPipe( hpipe ) ; /* wait until 'file' opened */ - 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 */ +6.2 How do I run my data through a filter before plotting? - /* plot another set of data */ +If your system supports the popen() function, as Unix does, you should be +able to run the output through another process, for example a short awk +program, such as - fprintf( hgnu, "plot '/pipe/gtemp'\n" ) ; - 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" ) ; +gnuplot> plot "< awk ' { print $1, $3/$2 } ' file.in" - DosClose( hpipe ) ; - pclose( hgnu ) ; - } +The plot command is very powerful and is able to do some arithmetic on +datafiles. See "help plot". - ; The above code works for gnuplot 3.5. In gnuplot 3.7, this can be - greatly simplified, since data can be fed 'inline, as in +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. -plot '-' w l -1 1 -2 3 -3 4 -e +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. - Section 7: Known problems +6.5 How do I plot lines (not grids) using splot? - Q7.1: Gnuplot is not plotting any points under X11! How come? - Very probably, you still are using an old version of - gnuplot_x11. Remove that, then do a full installation. +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. - On VMS, you need to make several symbols: +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 ? + +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 :== $disk:[directory]gnuplot.exe $ 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 +7.2 My isoline data generated by a Fortran program is not handled correctly. +What can I do? - Q7.2: My isoline data generated by a Fortran program is not handled - correctly. 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 blanc line can contain more than a linefeed. +7.3 Why does gnuplot ignore my very small numbers? - VMS> ATTRIB/RATTRIB=IMPDTED FOR010.DAT +Gnuplot treats all numbers less than 1e-08 as zero, by default. Thus, if you +are trying to plot a collection of very small numbers, they may be plotted +as zero. Worse, if you're plotting on a log scale, they will be off scale. +Or, if the whole set of numbers is "zero", your range may be considered +empty: - 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 are trying to plot a collection of very small - numbers, they may be plotted as zero. Worse, if you're plotting - 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` +The solution is to change gnuplot's idea of "zero": - 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> set zero 1e-20 - 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 ! 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 ! - What can I do? - Put a pause -1 after the plot command in the file. +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: - Q7.5: My formulas are giving me nonsense results! What's going on? - 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 +gnuplot> print 1/3 0 - gnuplot> print 1./3. +gnuplot> print 1./3. 0.333333 - This way of evaluating integer expressions is shared by both C and - Fortran. +This way of evaluating integer expressions is shared by both C and Fortran. - Q7.6: My Linux gnuplot complains about a missing gnuplot_x11. What is - 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. +7.6 Set output 'filename' isn't outputting everything it should! - 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 - 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; Axel Eble and Jutta Zimmermann helped with the - conversion to HTML. +Please upgrade to gnuplot 3.7. Some versions of its beta-release had a +problem in the LATEX-terminal. +7.8 The exit command does not work as documented! +This is a known bug and is fixed in the latest release. If you need the +feature please upgrade to the latest release. - Thomas Koenig, ig25@rz.uni-karlsruhe.de, 1994-03-28 +7.9 I can't find the demos and example files at the URLs in the +documentation! +The examples have been removec 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 +aplot! + +You can call gnuplot by using a short Perl-script like the following: + +#!/usr/bin/perl +open GP, "/usr/local/bin/gnuplot"; +print GP,"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 thre 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 Jürgen 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 98.1p1 +release (March 2nd, 1998) + +Copyright © 1993, 1994, 1995, 1996, 1997, Nikos Drakos, Computer Based +Learning Unit, University of Leeds. + +The command line arguments were: +latex2html -split 0 -show_section_numbers -html_version 3.2 gnuplot-faq.tex. + +The translation was initiated by Juergen von Hagen on 1999-10-20 + ------------------------------------------------------------------------ +[next] [up] [previous] +Juergen von Hagen +1999-10-20