Annotation of OpenXM_contrib/gnuplot/0FAQ, Revision 1.1
1.1 ! maekawa 1: * Please note that this is not the current official FAQ since
! 2: * I have upgraded the info in answer 4.0 - dd
! 3: * Made more changes - lh
! 4:
! 5: Archive-name: graphics/gnuplot-faq
! 6: Version: Mon Sep 23 04:23:01 CES 1996
! 7: Posting-frequency: every 14 days
! 8: URL: http://www.uni-karlsruhe.de/~ig25/gnuplot-faq/
! 9:
! 10: comp.graphics.apps.gnuplot
! 11:
! 12: comp.graphics.apps.gnuplot FAQ (Frequent Answered Questions)
! 13:
! 14: This is the FAQ (Frequently Answered Questions) list of the
! 15: comp.graphics.apps.gnuplot newsgroup, which discusses the gnuplot
! 16: program for plotting 2D - and 3D - graphs.
! 17:
! 18: Most of the information in this document came from public discussion
! 19: on comp.graphics.apps.gnuplot; quotations are believed to be in the
! 20: public domain.
! 21:
! 22: If you are reading this via WWW, and you can't access the individual
! 23: pages, please select here, then try again.
! 24:
! 25: Here's a list of the questions. If you are looking for the answer for
! 26: a specific question, look for the string Qx.x: at the beginning of a
! 27: line, with x.x being the question number. Sections in this FAQ are
! 28: * 0. Meta-Questions
! 29: * 1. General Information
! 30: * 2. Setting it up
! 31: * 3. Working with it
! 32: * 4. Wanted features
! 33: * 5. Miscellaneous
! 34: * 6. Making life easier
! 35: * 7. Known problems
! 36: * 8. Credits
! 37:
! 38:
! 39: Questions:
! 40:
! 41: Section 0: Meta - Questions
! 42:
! 43: * Q0.1: Where do I get this document?
! 44: * Q0.2: Where do I send comments about this document?
! 45:
! 46: Section 1: General Information
! 47:
! 48: * Q1.1: What is gnuplot?
! 49: * Q1.2: How did it come about and why is it called gnuplot?
! 50: * Q1.3: Does gnuplot have anything to do with the FSF and the
! 51: GNU project?
! 52: * Q1.4: What does gnuplot offer?
! 53: * Q1.5: Is gnuplot suitable for batch processing?
! 54: * Q1.6: Can I run gnuplot on my computer?
! 55:
! 56: Section 2: Setting it up
! 57:
! 58: * Q2.1: What is the current version of gnuplot?
! 59: * Q2.2: Where can I get gnuplot?
! 60: * Q2.3: How do I get gnuplot to compile on my system?
! 61: * Q2.4: What documentation is there, and how do I get it?
! 62:
! 63: Section 3: Working with it
! 64:
! 65: * Q3.1: How do I get help?
! 66: * Q3.2: How do I print out my graphs?
! 67: * Q3.3: How do I include my graphs in <word processor>?
! 68: * Q3.4: How do I post-process a gnuplot graph?
! 69: * Q3.5: How do I change symbol size, line thickness and the
! 70: like?
! 71: * Q3.6: How do I generate plots in GIF format?
! 72:
! 73: Section 4: Wanted features
! 74:
! 75: * Q4.0: What's new in gnuplot 3.7?
! 76: * Q4.1: Does gnuplot have hidden line removal?
! 77: * Q4.2: Does gnuplot support bar-charts/histograms/boxes?
! 78: * Q4.3: Does gnuplot support multiple y-axes on a single plot?
! 79: * Q4.4: Can I put multiple plots on a single page?
! 80: * Q4.5: Can I put both data files and commands into a single
! 81: file?
! 82: * Q4.6: Can I put Greek letters and super/subscripts into my
! 83: labels?
! 84: * Q4.7 Can I do 1:1 scaling of axes?
! 85: * Q4.8: Can I put tic marks for x and y axes into 3d plots?
! 86: * Q4.9: Does gnuplot support a driver for <graphics format>?
! 87: * Q4.10: Can I put different text sizes into my plots?
! 88: * Q4.11: How do I modify gnuplot?
! 89: * Q4.12: How do I skip data points?
! 90:
! 91: Section 5: Miscellaneous
! 92:
! 93: * Q5.1: I've found a bug, what do I do?
! 94: * Q5.2: Can I use gnuplot routines for my own programs?
! 95: * Q5.3: What extensions have people made to gnuplot? Where can I
! 96: get them?
! 97: * Q5.4: Can I do heavy-duty data processing with gnuplot?
! 98: * Q5.5: I have ported gnuplot to another system, or patched it.
! 99: What do I do?
! 100: * Q5.6: I want to help in developing gnuplot 3.7. What can I do?
! 101:
! 102: Section 6: Making life easier
! 103:
! 104: * Q6.1: How do I plot two functions in non-overlapping regions?
! 105: * Q6.2: How do I run my data through a filter before plotting?
! 106: * Q6.3: How do I make it easier to use gnuplot with LaTeX?
! 107: * Q6.4: How do I save and restore my settings?
! 108: * Q6.5: How do I plot lines (not grids) using splot?
! 109: * Q6.6: How do I plot a function f(x,y) which is bounded by
! 110: other functions in the x-y plain?
! 111: * Q6.7: How do I get rid of <feature in a plot>?
! 112: * Q6.8: How do I call gnuplot from my own programs ?
! 113:
! 114: Section 7: Known Problems
! 115:
! 116: * Q7.1: Gnuplot is not plotting any points under X11! How come?
! 117: * Q7.2: My isoline data generated by a Fortran program is not
! 118: handled correctly. What can I do?
! 119: * Q7.3: Why does gnuplot ignore my very small numbers?
! 120: * Q7.4: Gnuplot is plotting nothing when run via gnuplot
! 121: <filename>! What can I do?
! 122: * Q7.5: My formulas are giving me nonsense results! What's going
! 123: on?
! 124: * Q7.6: My Linux gnuplot complains about a missing gnuplot_x11.
! 125: What is wrong?
! 126: * Q7.7: set output 'filename' isn't outputting everything it
! 127: should!
! 128:
! 129: Section 8: Credits
! 130:
! 131: Section 0: Meta-Questions.
! 132:
! 133: Q0.1: Where do I get this document?
! 134: This document is posted about once every two weeks to the
! 135: newsgroups comp.graphics.apps.gnuplot, comp.answers and
! 136: news.answers. Like many other FAQ's, its newest (plaintext)
! 137: version is available via anonymous ftp from
! 138: ftp://rtfm.mit.edu/pub/usenet/news.answers/graphics/gnuplot
! 139: -faq.
! 140:
! 141: If you have access to the WWW, you can get the newest version
! 142: of this document from
! 143: http://www.uni-karlsruhe.de/~ig25/gnuplot-faq/
! 144:
! 145: Q0.2: Where do I send comments about this document?
! 146: Send comments, suggestions etc. via e-mail to Thomas
! 147: Koenig, Thomas.Koenig@ciw.uni-karlsruhe.de or
! 148: ig25@dkauni2.bitnet.
! 149:
! 150:
! 151: Section 1: General Information
! 152:
! 153: Q1.1: What is gnuplot?
! 154: Gnuplot is a command-driven interactive function plotting
! 155: program. It can be used to plot functions and data points in
! 156: both two- and three- dimensional plots in many different
! 157: formats, and will accommodate many of the needs of today's
! 158: scientists for graphic data representation. Gnuplot is
! 159: copyrighted, but freely distributable; you don't have to pay
! 160: for it.
! 161:
! 162: Q1.2: How did it come about and why is it called gnuplot?
! 163: The authors of gnuplot are:
! 164:
! 165: Thomas Williams, Colin Kelley, Russell Lang, Dave Kotz, John
! 166: Campbell, Gershon Elber, Alexander Woo and many others.
! 167:
! 168: The following quote comes from Thomas Williams:
! 169:
! 170: I was taking a differential equation class and Colin was taking
! 171: Electromagnetics, we both thought it'd be helpful to visualize the
! 172: mathematics behind them. We were both working as sys admin for an
! 173: EE VLSI lab, so we had the graphics terminals and the time to do
! 174: some coding. The posting was better received than we expected, and
! 175: prompted us to add some, albeit lame, support for file data.
! 176:
! 177: Any reference to GNUplot is incorrect. The real name of the program
! 178: is "gnuplot". You see people use "Gnuplot" quite a bit because many
! 179: of us have an aversion to starting a sentence with a lower case
! 180: letter, even in the case of proper nouns and titles. Gnuplot is not
! 181: related to the GNU project or the FSF in any but the most
! 182: peripheral sense. Our software was designed completely
! 183: independently and the name "gnuplot" was actually a compromise. I
! 184: wanted to call it "llamaplot" and Colin wanted to call it "nplot."
! 185: We agreed that "newplot" was acceptable but, we then discovered
! 186: that there was an absolutely ghastly pascal program of that name
! 187: that the Computer Science Dept. occasionally used. I decided that
! 188: "gnuplot" would make a nice pun and after a fashion Colin agreed.
! 189:
! 190: Q1.3: Does gnuplot have anything to do with the FSF and the GNU
! 191: project?
! 192: Gnuplot is neither written nor maintained by the FSF. It is not
! 193: covered by the General Public License, either.
! 194:
! 195: However, the FSF has decided to distribute gnuplot as part of
! 196: the GNU system, because it is useful, redistributable software.
! 197:
! 198: Q1.4: What does gnuplot offer?
! 199:
! 200: + Plotting of two-dimensional functions and data points in many
! 201: different styles (points, lines, error bars)
! 202: + plotting of three-dimensional data points and surfaces in
! 203: many different styles (contour plot, mesh).
! 204: + support for complex arithmetic
! 205: + self - defined functions
! 206: + support for a large number of operating systems, graphics
! 207: file formats and devices
! 208: + extensive on-line help
! 209: + labels for title, axes, data points
! 210: + command line editing and history on most platforms
! 211:
! 212: Q1.5: Is gnuplot suitable for batch processing?
! 213: Yes. You can read in files from the command line, or you can
! 214: redirect your standard input to read from a file. Both data and
! 215: command files can be generated automatically, from data
! 216: acquisition programs or whatever else you use.
! 217:
! 218: Q1.6: Can I run gnuplot on my computer?
! 219: Gnuplot is available for a number of platforms. These are: Unix
! 220: (X11 and NeXTSTEP), VAX/VMS, OS/2, MS-DOS, Amiga, MS-Windows,
! 221: OS-9/68k, Atari ST and the Macintosh. Modifications for NEC
! 222: PC-9801 are said to exist (where?).
! 223:
! 224:
! 225: Section 2: Setting it up
! 226:
! 227: Q2.1: What is the current version of gnuplot?
! 228: The current version of gnuplot is 3.7, which has many
! 229: improvements over 3.5
! 230:
! 231: Q2.2: Where can I get gnuplot?
! 232: All of the later addresses refer to ftp sites. Please note that
! 233: it is preferable for you to use the symbolic name, rather than
! 234: the IP address given in brackets, because that address is much
! 235: more subject to change.
! 236:
! 237: The official distribution site for the gnuplot source is
! 238: ftp.dartmouth.edu [129.170.16.4, soon to be 129.170.8.11],
! 239: the file is called /pub/gnuplot/gnuplot-3.7.tar.Z. Official
! 240: mirrors of that distribution are (for Australia)
! 241: ftp.monash.edu.au [130.194.11.18] and (for Europe)
! 242: ftp.irisa.fr [131.254.254.10]. You can also get it from your
! 243: friendly neighbourhood comp.sources.misc archive.
! 244:
! 245: MS-DOS and MS-Windows binaries are available from
! 246:
! 247: + oak.oakland.edu (North America) [141.210.10.117] as
! 248: /Simtel/msdos/plot/gpt35*.zip,
! 249: + garbo.uwasa.fi (Europe) [193.166.120.5] as
! 250: /pc/plot/gpt35*.zip and
! 251: + archie.au (Australia) [139.130.4.6] as
! 252: micros/pc/oak/plot/gpt35*.zip.
! 253:
! 254: The files are: gpt35doc.zip, gpt35exe.zip, gpt35src.zip and
! 255: gpt35win.zip.
! 256:
! 257: There is a special MS-DOS version for 386 or better processors;
! 258: it is available from the official gnuplot sites as DOS34.zip.
! 259:
! 260: OS/2 2.x binaries are at ftp-os2.nmsu.edu [128.123.35.151],
! 261: in /os2/2.x/unix/gnuplt35.zip.
! 262:
! 263: Amiga sources and binaries are available from ftp.wustl.edu
! 264: [128.252.135.4] as /pub/aminet/util/gnu/gnuplot-3.5.lha; there
! 265: are numerous mirrors of this distribution, for example
! 266: ftp.uni-kl.de, oes.orst.edu or ftp.luth.se.
! 267:
! 268: The NeXTSTEP front end can be found at
! 269: ftp://next-ftp.peak.org/pub/next/binaries/plotting/ as
! 270: Gnuplot1.2_bin.tar.Z.
! 271:
! 272: A version for OS-9/68K can be found at cabrales.cs.wisc.edu
! 273: [128.105.36.20] as /pub/OSK/GRAPHICS/gnuplot32x.tar.Z; it
! 274: includes both X-Windows and non - X-windows versions.
! 275:
! 276: There is a version for the Macintosh at
! 277: ftp://ftp.ee.gatech.edu/pub/mac/gnuplot/ which includes
! 278: binaries for 68000-based Macs with and without FPU and native
! 279: support for PowerMacs.
! 280:
! 281: Versions for the Atari ST and TT, which include some GEM
! 282: windowing support, are available from
! 283: ftp://ftp.uni-kl.de/pub/atari/graphics/, as gplt35st.zip
! 284: and gplt35tt.zip. They work best under MiNT.
! 285:
! 286: Executable files, plus documentation in Japanese, exist for the
! 287: X680x0 on
! 288: ftp://ftp.csis.oita-u.ac.jp/pub/x68k/fj.binaries.x68000/vol
! 289: 2.
! 290:
! 291: People without ftp access can use an ftp-mail server; send a
! 292: message saying 'help' to bitftp@pucc.bitnet (for BITNET only)
! 293: or to ftpmail@ftp.dartmouth.edu.
! 294:
! 295: For a uuencoded copy of the the gnuplot sources (compressed tar
! 296: file), send this as the body of a message to
! 297: ftpmail@ftp.dartmouth.edu:
! 298:
! 299:
! 300: open
! 301: cd pub/gnuplot
! 302: mode binary
! 303: get gnuplot3.5.tar.Z
! 304: quit
! 305:
! 306: If you have some problem, you might need to stick
! 307:
! 308: reply-to <your-email-address-here>
! 309:
! 310: before all the above.
! 311:
! 312: It is a good idea to look for a nearby ftp site when
! 313: downloading things. You can use archie for this. See if an
! 314: archie client is installed at your system (by simply typing
! 315: archie at the command prompt), or send mail to archie@sura.net
! 316: with the word 'help' in both the subject line and the body of
! 317: the mail. However, be aware that the version you find at a near
! 318: ftp site may well be out of date; check the last modification
! 319: date and the number of bytes against the newest release at one
! 320: of the official servers.
! 321:
! 322: Q2.3: How do I get gnuplot to compile on my system?
! 323: As you would any other installation. Read the files README and
! 324: README.Install, edit the Makefile according to taste, and run
! 325: make or whatever is suitable for your operating system.
! 326:
! 327: If you get a complaint about a missing file libplot.a or
! 328: something similar when building gnuplot for X11, remove
! 329: -DUNIXPLOT from the TERMFLAGS= line, remove -lplot from the
! 330: DTBS= line and run again. If you are making X11 on a sun, type
! 331: 'make x11_sun'.
! 332:
! 333: For compiling gnuplot under Irix 5.2 and Irix 5.3, there is a
! 334: patch in the file lvs.zip in the contrib directory at
! 335: ftp.dartmouth.edu.
! 336:
! 337: Q2.4: What documentation is there, and how do I get it?
! 338: The documentation is included in the source distribution. Look
! 339: at the docs subdirectory, where you'll find
! 340:
! 341: + a Unix man page, which says how to start gnuplot
! 342: + a help file, which also can be printed as a manual
! 343: + a tutorial on using gnuplot with LaTeX
! 344: + a quick reference summary sheet for TeX only
! 345:
! 346: PostScript copies of the documentation can be ftp'd from
! 347: ftp.dartmouth.edu, in pub/gnuplot, as manual.ps.Z and
! 348: tutorial.ps.Z
! 349:
! 350: Andy Liaw and Dick Crawford have written a 16-page user's
! 351: guide. It is available from
! 352: ftp://picard.tamu.edu/pub/gnuplot/ as gptug.tex (also get
! 353: example.tex from the same directory), gptug.dvi or gptug.ps.
! 354:
! 355: At the same site, there's a two- page instruction sheet for the
! 356: enhpost PostScript driver (see Q4.6 ) as enhpost.guide.ps
! 357: and a short guide to gnuplot PostScript files, as gp-ps.doc.
! 358:
! 359: A Chinese translation of the gnuplot manual can be found on
! 360: ftp://servers.nctu.edu.tw/misc/environment/NCTU_EV/classnot
! 361: e/gnuplot.ps.gz .
! 362:
! 363: There is a WWW hompepage for gnuplot at
! 364: http://www.cs.dartmouth.edu/gnuplot_info.html, which
! 365: includes the reference manual and a demo.
! 366:
! 367: There are two more Chinese documents about gnuplot: a 72 - page
! 368: User's guide
! 369: ftp://phi.sinica.edu.tw/pub/aspac/doc/94/94002.ps.gz and a
! 370: 28 - page Touring Guide
! 371: ftp://phi.sinica.edu.tw/pub/aspac/doc/95/95006.ps.gz. Both
! 372: documents are in PostScript format and gzipped.
! 373:
! 374:
! 375: Section 3: Working with it
! 376:
! 377: Q3.1: How do I get help?
! 378: Give the 'help' command at the initial prompt. After that, keep
! 379: looking through the keywords. Good starting points are 'plot'
! 380: and 'set'.
! 381:
! 382: Read the manual, if you have it.
! 383:
! 384: Look through the demo subdirectory; it should give you some
! 385: ideas.
! 386:
! 387: Ask your colleagues, the system administrator or the person who
! 388: set up gnuplot.
! 389:
! 390: Post a question to comp.graphics.apps.gnuplot or send mail
! 391: to the gatewayed mailing list info-gnuplot@dartmouth.edu. If
! 392: you want to subscribe to the mailing list, send a mail to
! 393: majordomo@dartmouth.edu with the body of the message being
! 394: 'subscribe info-gnuplot'. Please don't do this if you can get
! 395: comp.graphics.apps.gnuplot directly. If you pose a
! 396: question there, it is considered good form to solicit e-mail
! 397: replies and post a summary.
! 398:
! 399: Q3.2: How do I print out my graphs?
! 400: The kind of output produced is determined by the 'set terminal'
! 401: command; for example, 'set terminal postscript' will produce
! 402: the graph in PostScript format. Output can be redirected using
! 403: the 'set output' command.
! 404:
! 405: As an example, the following prints out a graph of sin(x) on a
! 406: Unix machine running the X Window system.
! 407:
! 408:
! 409: gnuplot> plot [-6:6] sin(x)
! 410: gnuplot> set terminal postscript
! 411: Terminal type set to 'postscript'
! 412: Options are 'landscape monochrome "Courier" 14'
! 413: gnuplot> set output "sin.ps"
! 414: gnuplot> replot
! 415: gnuplot> set output # set output back to default
! 416: gnuplot> set terminal x11 # ditto for terminal type
! 417: gnuplot> ! lp -ops sin.ps # print PS File (site dependent)
! 418: request id is lprint-3433 (standard input)
! 419: lp: printed file sin.ps on fg20.rz.uni-karlsruhe.de (5068 Byte)
! 420: !
! 421: gnuplot>
! 422:
! 423: Q3.3: How do I include my graphs in <word processor>?
! 424: Basically, you save your plot to a file in a format your word
! 425: processor can understand (using "set term" and "set output",
! 426: see above), and then you read in the plot from your word
! 427: processor.
! 428:
! 429: Details depend on the kind of word processor you use; use "set
! 430: term" to get a list of available file formats.
! 431:
! 432: Many word processors can use Encapsulated PostScript for
! 433: graphs. This can be generated by the "set terminal postscript
! 434: eps" command. Most MS-DOS word processors understand HPGL
! 435: (terminal type hpgl).
! 436:
! 437: With TeX, it depends on what you use to print your dvi files.
! 438: If you use dvips or dvi2ps, you can use Encapsulated
! 439: PostScript. For emTeX (popular for MS-DOS), you can use emTeX,
! 440: otherwise use the LaTeX terminal type, which generates a
! 441: picture environment.
! 442:
! 443: If nothing else helps, try using the pgm or ppm format and
! 444: converting it to a bitmap format your favourite word processor
! 445: can understand. An invaluable tool for this is Jef Poskanzer's
! 446: PBMPLUS package.
! 447:
! 448: The PBMPLUS package is available in the contrib distribution
! 449: for the X Window System. The original site for this is
! 450: ftp://ftp.x.org/contrib/. There are many mirrors, e.g.
! 451: ftp://ftp.th-darmstadt.de/pub/X11/contrib/ or .
! 452: ftp://sunsite.unc.edu/pub/X11/contrib/.
! 453:
! 454: The most recent release of pbm by the author is dated December
! 455: 91 and is called pbmplus10dec91.tar.Z
! 456:
! 457: There is new version including lots of patches from the net
! 458: that is not maintained by the author called netpbm, with the
! 459: newest version called netpbm-7dec1993.tar.gz.
! 460:
! 461: Check archie (see Q2.2 ) for an archive site near you.
! 462:
! 463: Q3.4: How do I post-process a gnuplot graph?
! 464: This depends on the terminal type you use.
! 465:
! 466: You can use the terminal type fig (you may need to recompile
! 467: gnuplot to enable this terminal type, by putting #define FIG
! 468: into <term.h>), and use the xfig drawing program to edit the
! 469: plot afterwards.
! 470:
! 471: For PostScript output, you may be able to use the pstotgif
! 472: script (which calls GhostScript) to convert PostScript into the
! 473: format of the tgif drawing program. Tgif is also able to save
! 474: in PostScript format.
! 475:
! 476: Both tgif and xfig can be obtained from the X Window contrib
! 477: distribution (see Q3.3).
! 478:
! 479: Another possibility for modifying PostScript output appears to
! 480: be IslandDraw, a commercial drawing program for UNIX
! 481: workstations.
! 482:
! 483: For Windows, there is another alternative, PageDraw. It can
! 484: post-process AI (Adobe Illustrator) files, and has a converter
! 485: from PostScript to AI. It can be downloaded from
! 486: http://www.wix.com/PageDraw/.
! 487:
! 488: Q3.5: How do I change symbol size, line thickness and the like?
! 489: Again, this depends on the terminal type. For PostScript, you
! 490: can edit the generated PostScript file. An overview of what
! 491: means what in the PostScript files gnuplot generates can be
! 492: found at ftp://picard.tamu.edu/pub/gnuplot/ as gs-ps.doc.
! 493: A general introduction to PostScript can be found at
! 494: ftp://unix.hensa.ac.uk/pub/misc/ukc.reports/comp.sci/repor
! 495: ts/ as 11-92.ps.Z.
! 496:
! 497: Q3.6: How do I generate plots in GIF format?
! 498: In gnuplot version 3.5, use the pbm terminal and use the
! 499: PBMPLUS package or other utilities to convert the resulting
! 500: bitmap (see Q 3.3 for how to get the PBMPLUS package).
! 501:
! 502: From 3.7 on, there is a gif terminal.
! 503:
! 504:
! 505: Section 4: Wanted features
! 506:
! 507: Q4.0: What's new in gnuplot 3.7?
! 508: Please refer to the NEWS file in the source distribution.
! 509:
! 510: Q4.1: Does gnuplot have hidden line removal?
! 511: Version 3.5 supports hidden line removal on all platforms
! 512: except MS-DOS; use the command
! 513:
! 514:
! 515: set hidden3d
! 516:
! 517: If someone can solve the 64K DGROUP memory problem, gnuplot would
! 518: support hidden line removal on MS-DOS as well. Version 3.2
! 519: supports limited hidden line removal.
! 520:
! 521: Q4.2: Does gnuplot support bar-charts/histograms/boxes?
! 522: As of version 3.4, it does; use the style "with boxes" for bar
! 523: charts. To get filled boxes, you can try a modification by
! 524: Steve Cumming, available via ftp from
! 525: ftp://grebe.geog.ubc.ca/pub/gnuplot as box.tar.
! 526:
! 527: Q4.3: Does gnuplot support multiple y-axes on a single plot?
! 528: Yes, with two unofficial mods, multiplot.shar and borders.shar.
! 529: They can be obtained from
! 530: ftp://ftp.dartmouth.edu/pub/gnuplot/contrib/multi_woo.zip
! 531: or ftp://ftp.cygnus.edu/incoming/gpx38.zip.
! 532:
! 533: Also, 3.7 supports this capability.
! 534:
! 535: Q4.4: Can I put multiple plots on a single page?
! 536: Yes, with the multiplot.shar mod, or if you are running gnuplot
! 537: 3.7. If you are using PostScript output, check out mpage, which
! 538: can be ftp'd from ftp.eng.umd.edu:pub/misc/mpage-2.tar.Z
! 539:
! 540: Q4.5: Can I put both data files and commands into a single file?
! 541: This feature is in gnuplot 3.7.
! 542:
! 543: Q4.6: Can I put Greek letters and super/subscripts into my labels?
! 544: You might try using the LaTeX terminal type and putting text
! 545: like \alpha_{3} into it.
! 546:
! 547: David Denholm has written a PostScript terminal which allows
! 548: for super/and subscripts, such as a^x or {/Symbol a }. Ftp to
! 549: sotona.phys.soton.ac.uk [152.78.192.42] and get enhpost.trm,
! 550: written by David Denholm and Matt Heffron. To install it,
! 551: follow the instructions at the top of the file, then recompile.
! 552: enhpost is also included in gnuplot 3.7.
! 553:
! 554: Q4.7: Can I do 1:1 scaling of axes?
! 555: Not easily in 3.5; in 3.7, you can use "set size square".
! 556:
! 557: Q4.8: Can I put tic marks for x and y axes into 3d plots?
! 558: In version 3.5, you can; use the "with boxes" option.
! 559:
! 560: Q4.9: Does gnuplot support a driver for <graphics format>?
! 561: To see a list of the available graphic drivers for your
! 562: installation of gnuplot, type "set term".
! 563:
! 564: Some graphics drivers are included in the normal distribution,
! 565: but are uncommented by default. If you want to use them, you'll
! 566: have to change ~gnuplot/term.h, and recompile.
! 567:
! 568: Q4.10: Can I put different text sizes into my plots?
! 569: If you use PostScript output, you can use Dave Denholm's and
! 570: Matt Heffron's updated PostScript driver,
! 571: /sotona.phys.soton.ac.uk:/enhpost.trm (see also Q4.6 ).
! 572: Else, use 3.7.
! 573:
! 574: Q4.11 How do I modify gnuplot, and apply 'patches'?
! 575: For this, you will need to recompile gnuplot.
! 576:
! 577: Modifications people make are either done by replacing files,
! 578: such as terminal drivers, or by 'patching'. If a file is a
! 579: replacement, it will probably tell you in its README or in the
! 580: lines at the beginning.
! 581:
! 582: To patch a file, you need Larry Wall's patch utility. On many
! 583: UNIX systems, it is already installed; do a man patch to check.
! 584: If it isn't, you'll have to get it; it can be found wherever
! 585: GNU software is archived.
! 586:
! 587: Q4.12 How do I skip data points?
! 588: By specifying ? as a data value, as in
! 589:
! 590:
! 591: 1 2
! 592: 2 3
! 593: 3 ?
! 594: 4 5
! 595:
! 596: Q4.13 How do I plot every nth point?
! 597: You can apply the patch point_skip from the contrib section
! 598: (see Q5.3 or, assuming you have awk installed on your
! 599: system, you can use the following line:
! 600:
! 601:
! 602: gnuplot> plot "< awk '{if(NR%5==0)print}' file.dat"
! 603:
! 604: plots every 5th line, and
! 605:
! 606: gnuplot> plot "< awk '$0 !~ /^#/ {if(NR%40==0)print $1, $4}' file.dat"
! 607:
! 608: plots every 40th line while skipping commented lines.
! 609:
! 610:
! 611: Section 5: Miscellaneous
! 612:
! 613: Q5.1: I've found a bug, what do I do?
! 614: First, try to see whether it actually is a bug, or whether it
! 615: is a feature which may be turned off by some obscure set -
! 616: command.
! 617:
! 618: Next, see wether you have an old version of gnuplot; if you do,
! 619: chances are the bug has been fixed in a newer release.
! 620:
! 621: If, after checking these things, you still are convinced that
! 622: there is a bug, proceed as follows. If you have a fairly
! 623: general sort of bug report, posting to
! 624: comp.graphics.apps.gnuplot is probably the way to go. If
! 625: you have investigated a problem in detail, especially if you
! 626: have a context diff that fixes the problem, please e-email a
! 627: report to bug-gnuplot@dartmouth.edu. The bug-gnuplot list is
! 628: for reporting and collecting bug fixes, the
! 629: comp.graphics.apps.gnuplot newsgroup will be more help for
! 630: finding work arounds or actually solving gnuplot related
! 631: problems. If you do send in a bug report, be sure and include
! 632: the version of gnuplot (including patchlevel), terminal driver,
! 633: operating system, an exact description of the bug and input
! 634: which can reproduce the bug. Also, any context diffs should be
! 635: referenced against the latest official version of gnuplot if at
! 636: all possible.
! 637:
! 638: Q5.2: Can I use gnuplot routines for my own programs?
! 639: Yes. John Campbell <jdc@nauvax.ucc.nau.edu> has written
! 640: gplotlib, a version of gnuplot as C subroutines callable from a
! 641: C program. This is available as gplotlib.tar.Z on the machine
! 642: ftp.nau.edu in the directory /pub/gplotlib.tar.Z. This library
! 643: has been updated to be compatible with version 3.5.
! 644:
! 645: Q5.3: What extensions have people made to gnuplot? Where can I get
! 646: them?
! 647: __Extensions are available from
! 648: ftp://ftp.dartmouth.edu/pub/gnuplot/contrib/ . It contains
! 649: the following files:
! 650:
! 651: Point Skips
! 652:
! 653: + _Data Filtering_ Instead of just having two params
! 654: following the style param, there are now 4:
! 655: o 1: line_type
! 656: o 2: point_type
! 657: o 3: point_skip - gives the number of data samples per
! 658: plotted point
! 659: o 4: point_offs - gives the sample number on which to plot
! 660: the first point
! 661: Thus points are plotted only for the samples n satisfying n =
! 662: point_skip*i + point_offs for some non-negative integer i.
! 663: From:
! 664: pixar!sun!prony.Colorado.EDU!clarkmp@ucbvax.berkeley.edu
! 665: (Michael Clark)
! 666: + _Point Skip with Awk_ With UNIX,
! 667:
! 668: gnuplot> plot "< awk '{if(NR%5==0)print$0}' file.dat"
! 669: From: James Darrell McCauley, mccauley@ecn.purdue.edu
! 670: + _New Xlib mods._ From: gregg hanna
! 671: (gregor@kafka.saic.com)
! 672:
! 673: Vectors and Arrows
! 674: + _Program to convert lines to vectors_ This program turns
! 675: line segments into line segments with a half-arrow at the
! 676: head: by uncommenting two lines below, the arrowhead will be
! 677: a triangle. optional arguments: size angle where size is a
! 678: fraction of each vector's magnitude and angle is in degrees
! 679: all data taken from standard input, and output to standard
! 680: output. typical invocation:
! 681:
! 682: arrow 0.2 15 <vector.lin >vector.heads
! 683: From: andrew@jarthur.claremont.edu (Andrew M. Ross)
! 684: + _Vect2gp_, an awk script to make gnuplot command script
! 685: to draw a vector field map. From: hiro@ice3.ori.u-tokyo.ac.jp
! 686: (Yasu-Hiro YAMAZAKI)
! 687: + _GNUPLOT to SIPP_ This is a "far from perfect" converter
! 688: that takes gnuplot table output and splits it in polygons.
! 689: Then it calls sipp to render it. You get sipp from
! 690: isy.liu.se:/pub/sipp or ask archie. From:
! 691: chammer@POST.uni-bielefeld.de (Carsten Hammer)
! 692:
! 693: Histograms and Pie Charts
! 694: + _Histogram C program_ The short C program below is a
! 695: filter that calculates a histogram from a sequence of numbers
! 696: and prints the output in such a format that Gnuplot can plot
! 697: the histogram by the command sequence
! 698:
! 699: !histogram < datain > tmp;
! 700: plot "tmp" with impulses
! 701: From: mustafa@seas.smu.edu (Mustafa Kocaturk)
! 702: + _HG_ is an automatic histogram generator. it reads a
! 703: column of data from an input file and emits a [log] histogram
! 704: ks does ks or chi^2 tests on a set of input arrays. you need
! 705: the "numerical recipes in C" library somewhere on your system
! 706: to link this one. I can not undertake to fix bugs or add
! 707: features, but I might do it if asked. From: Steve Cumming
! 708: stevec@geog.ubc.ca
! 709: + _Piechart C program_ The short C program below formats
! 710: data for display as a piechart. From: mccauley@ecn.purdue.edu
! 711: (James Darrell McCauley)
! 712:
! 713: Interprocess Communications
! 714: + _Notes of Windows Hooks_ From: Maurice
! 715: Castro,maurice@bruce.cs.monash.edu.au
! 716: + _Named Pipes Example _From:
! 717: dtaber@deathstar.risc.rockwell.com (Don Taber)
! 718: + _PipeLib_ What the library does is set up to 20 programs
! 719: going (like gnuplot), then allows you to send to them as if
! 720: the program were typing on the command line. I've included a
! 721: brief set of docs after the source code, in latex format.
! 722: There is no facility to watch the output of a program. From:
! 723: ssclift@neumann.uwaterloo.ca (Simon Clift)
! 724: + _Popen example from lsqrfit_ The following function
! 725: sends a command to gnuplot. Gnuplot will execute the command
! 726: just as if you typed it at the gnuplot command line. This
! 727: example is adapted from my least squares fitting program
! 728: which is located at ftp.cdrom.com in
! 729: pub/os2/2_x/unix/lsqrft14.zip. Complete source is included.
! 730: From: michael@krypton.mit.edu (Michael Courtney)
! 731:
! 732: Multiple logical plots on a single page
! 733: + _Gawk script for multiple encapsulated postscript on a
! 734: page_ It's slightly more flexible than mpage, because it
! 735: changes the aspect ratio of the plots; mpage according to the
! 736: documentation only allows 1, 2, 4, or 8 plots on a page. This
! 737: script works for unix with encapsulated postscript (eps)
! 738: output. It should work with gawk or nawk, although I've only
! 739: tested it with gawk. (Gawk is GNU's version of awk and is
! 740: available from prep.ai.mit.edu.) You just specify how many
! 741: rows and columns of plots you want and it does the rest. For
! 742: example, gnuplot_eps rows=3 cols=2 *.eps | lpr will print all
! 743: eps files in your current directory with 6 on a page. Also,
! 744: see the comments in the file. From:
! 745: holt@goethe.cns.caltech.edu (Gary Holt)
! 746: + _Sed script for multiple encapsulated postscript on a
! 747: page_ You have MULTIPLE postscript files each containing a
! 748: single plot. From: wgchoe@scoupe.postech.ac.kr (Choe Won Gyu)
! 749: + _Massive patch_ with add multiplotcapability to all
! 750: devices and a lot more. The reason it is offered in this form
! 751: is because the original multiplot.pat did not patch correctly
! 752: into gnuplot version 3.5. This mod also add borders options,
! 753: financial plots, multiple line titles and other asundry
! 754: items. Use at your own risk. Look at the top of makefile.r
! 755: for a more complete list of changes.
! 756: From: Alex Woo, woo@playfair.stanford.edu
! 757:
! 758: lvs.zip
! 759: This contains miscellaneous, modifications, which include:
! 760: + Label positioning using either plot or device-relative
! 761: coodinates
! 762: + Portability to Irix-5.2 and Irix-5.3
! 763: + The "thru" keyword has been extended to include "thrux" for
! 764: the X - Coordinate
! 765: + Capability to read a ordinary Fortran-style unformatted file
! 766: + A Perl script for better handling of eps
! 767: + Modifications to docs/doc2info to generate "next", "prev",
! 768: and "up" data for each node.
! 769: + Changes in the documentation to reflect the above.
! 770:
! 771: Miscellaneous Mods
! 772: + _Congp3d3_ is a preprocessor to draw contour plots on
! 773: irregular regions. From: mrb2@nrc.gov (Margaret Rose Byrne)
! 774: + _Sockpipe_ is a socket based pipe needed for the
! 775: Stardent OS. From: Mike Hallesy, Stardent Computer Product
! 776: Support, hal@stardent.com
! 777: + _Time Series_ is a patch to add multiline titles and
! 778: labels, time series x and y data and tic marks, and automatic
! 779: resizing of plots and much more. From: Hans Olav Eggestad,
! 780: olav@jordforsk.nlh.no
! 781:
! 782: Other Operationing Systems
! 783: + _MacIntosh Port of Version 3.2_ From: Noboru Yamamoto,
! 784: sun!kekvax.kek.jp!YAMAMOTO@pixar.com
! 785: + _MacIntosh Port of Version 3.5_ From:
! 786: laval@londres.cma.fr (Philippe LAVAL)
! 787: + _OS-9 Port of Version 3.2_
! 788:
! 789:
! 790: Q5.4: Can I do heavy - duty data processing with gnuplot?
! 791: Gnuplot alone is not suited very well for this. One thing you
! 792: might try is fudgit, an interactive multi-purpose fitting
! 793: program written by Martin-D. Lacasse
! 794: (isaac@frodo.physics.mcgill.ca). It can use gnuplot as its
! 795: graphics back end and is available from ftp.physics.mcgill.ca
! 796: in /pub/Fudgit/fudgit_2.33.tar.Z [132.206.9.13], and from the
! 797: main Linux server, tsx-11.mit.edu [18.172.1.2] and its numerous
! 798: mirrors around the world as
! 799: /pub/linux/sources/usr.bin/fudgit-2.33.tar.z. Versions are
! 800: available for AIX, Data General, HP-UX, IRIX 4, Linux, NeXT,
! 801: Sun3, Sun4, Ultrix, OS/2 and MS-DOS. The MS-DOS version is
! 802: available on simtel20 mirrors (simtel20 itself has closed down)
! 803: in the "math" subdirectory as fudg_231.zip.
! 804:
! 805: Carsten Grammes has written a fitting program which goes
! 806: together with gnuplot; it is called gnufit and is available
! 807: from the official gnuplot sites, as the files gnufit12.info,
! 808: gnufit12.tar.gz (source) and gft12dos.zip (MS-DOS). It has been
! 809: merged into gnuplot 3.7.
! 810:
! 811: Michael Courtney has written a program called lsqrft, which
! 812: uses the Levenberg - Marquardt - Algorithm for fitting data to
! 813: a function. It is avialiable from ftp.cdrom.com as
! 814: /pub/os2/2_x/unix/lsqrft13.zip; sources, which should compile
! 815: on Unix, and executables for MS-DOS and OS/2 2.x are included.
! 816: There is an interface to the OS/2 presentation manager.
! 817:
! 818: You might also want to look at the applications developed by
! 819: the Software Tools Group (STG) at the National Center for
! 820: Supercomputing Applications. Ftp to ftp.ncsa.uiuc.edu
! 821: [141.142.20.50] and get the file README.BROCHURE for more
! 822: information.
! 823:
! 824: You can also try pgperl, an integration of the PGPLOT plotting
! 825: package with Perl 5. Information can be found at
! 826: http://www.ast.cam.ac.uk/~kgb/pgperl.html, the source is
! 827: available from ftp://ftp.ast.cam.ac.uk/pub/kgb/pgperl/ or
! 828: ftp://linux.nrao.edu/pub/packages/pgperl/.
! 829:
! 830: Another possibility is Octave. To quote from its README: Octave
! 831: is a high-level language, primarily intended for numerical
! 832: computations. It provides a convenient command line interface
! 833: for solving linear and nonlinear problems numerically.
! 834:
! 835: The latest released version of Octave is always available via
! 836: anonymous ftp from bevo.che.wisc.edu in the directory
! 837: /pub/octave.
! 838:
! 839: Q5.5: I have ported gnuplot to another system, or patched it. What do
! 840: I do?
! 841: If your patch is small, mail it to bug-gnuplot@dartmouth.edu,
! 842: with a thorough description of what the patch is supposed to
! 843: do, which version of gnuplot it is relative to, etc. Also, you
! 844: can send notification of the patch to the FAQ maintainer, if
! 845: you want a mention. Please don't send the patch itself to me
! 846: :-)
! 847:
! 848: If your modifications are extensive (such as a port to another
! 849: system), upload your modifications to
! 850: ftp://ftp.dartmouth.edu/pub/dropoff. Please drop a note to
! 851: David.Kotz@dartmouth.edu, the maintainer of the gnuplot
! 852: subdirectory there, plus a note to bug-gnuplot@dartmouth.edu.
! 853:
! 854: Q5.6: I want to help in developing gnuplot 3.7. What can I do?
! 855: Join the gnuplot beta test mailing list by sending a mail
! 856: containing the line
! 857:
! 858:
! 859: subscribe info-gnuplot-beta
! 860:
! 861: in the body (not the subject) of the mail to Majordomo@Dartmouth.EDU.
! 862:
! 863:
! 864: Section 6: Making life easier
! 865:
! 866: Q6.1: How do I plot two functions in non - overlapping regions?
! 867: Use a parametric plot. An example:
! 868:
! 869:
! 870: set parametric
! 871: a=1
! 872: b=3
! 873: c=2
! 874: d=4
! 875: x1(t) = a+(b-a)*t
! 876: x2(t) = c+(d-c)*t
! 877: f1(x) = sin(x)
! 878: f2(x) = x**2/8
! 879: plot [t=0:1] x1(t),f1(x1(t)) title "f1", x2(t), f2(x2(t)) title "f2"
! 880:
! 881: Q6.2: How do I run my data through a filter before plotting?
! 882: If your system supports the popen() function, as Unix does, you
! 883: should be able to run the output through another process, for
! 884: example a short awk program, such as
! 885:
! 886:
! 887: gnuplot> plot "< awk ' { print $1, $3/$2 } ' file.in"
! 888:
! 889: Unfortunately, in 3.2, there is a rather short limitation on the
! 890: maximum argument length, so your command line may be truncated
! 891: (usually, this will mean that awk cannot find the filename).
! 892: Also, you may need to escape the $ - characters in your awk
! 893: programs.
! 894:
! 895: As of version 3.4, gnuplot includes the thru - keyword for the
! 896: plot command for running data files through a gnuplot - defined
! 897: function.
! 898:
! 899: You can also get divhack.patch from
! 900: sotona.phys.soton.ac.uk[152.78.192.42] via anonymous ftp. It
! 901: allows expressions of the kind
! 902:
! 903:
! 904: gnuplot> plot "datafile" using A:B:C
! 905:
! 906: where A,B,C,... are now either a column number, as usual, or an
! 907: arbitrary expression enclosed in ()'s, and using $1,$2,etc to
! 908: access the data columns.
! 909:
! 910: Q6.3: How do I make it easier to use gnuplot with LaTeX?
! 911: There is a set of LaTeX macros and shell scripts that are meant
! 912: to make your life easier when using gnuplot with LaTeX. This
! 913: package can be found on ftp.dartmouth.edu [129.170.16.54, soon
! 914: to be 129.170.8.11] in pub/gnuplot/latex.shar, by David Kotz.
! 915: For example, the program "plotskel" can turn a gnuplot-output
! 916: file plot.tex into a skeleton file skel.tex, that has the same
! 917: size as the original plot but contains no graph. With the right
! 918: macros, the skeleton can be used for preliminary LaTeX passes,
! 919: reserving the full graph for later passes, saving tremendous
! 920: amounts of time.
! 921:
! 922: Q6.4: How do I save and restore my settings?
! 923: Use the "save" and "load" commands for this; see "help save"
! 924: and "help load" for details.
! 925:
! 926: Q6.5: How do I plot lines (not grids) using splot?
! 927: If the data in a data file for splot is arranged in such a way
! 928: that each one has the same number of data points (using blank
! 929: lines as delimiters, as usual), splot will plot the data with a
! 930: grid. If you want to plot just lines, use a different number of
! 931: data entries (you can do this by doubling the last data point,
! 932: for example). Don't forget to set parametric mode, of course.
! 933:
! 934: Q6.6: How do I plot a function f(x,y) which is bounded by other
! 935: functions in the x-y plain?
! 936: An example:
! 937:
! 938:
! 939: f(x,y) = x**2 + y **2
! 940: x(u) = 3*u
! 941: yu(x) = x**2
! 942: yl(x) = -x**2
! 943: set parametric
! 944: set cont
! 945: splot [0:1] [0:1] u,yl(x(u))+(yu(x(u)) - yl(x(u)))*v,\
! 946: f(x(u), (yu(x(u)) - yl(x(u)))*v)
! 947:
! 948: Q6.7: How do I get rid of <feature in a plot>?
! 949: Usually, there is a set command to do this; do a
! 950:
! 951:
! 952: gnuplot> ?set no
! 953:
! 954: for a short overview.
! 955:
! 956: Q6.8: How do I call gnuplot from my own programs?
! 957: Here's code which works for a UNIX system, using (efficient)
! 958: named pipes.
! 959:
! 960:
! 961: #include <sys/types.h>
! 962: #include <sys/stat.h>
! 963: #include <stdlib.h>
! 964: #include <stdio.h>
! 965: #include <math.h>
! 966: #include <unistd.h>
! 967:
! 968: #define PANIC(a) do { \
! 969: perror(a); \
! 970: if (temp_name) unlink(temp_name);\
! 971: exit(1);\
! 972: } while(0)
! 973:
! 974: int main() {
! 975: FILE *command,*data;
! 976: char *temp_name = NULL;
! 977: double a,b;
! 978: int i;
! 979:
! 980: if ((temp_name = tmpnam((char *) 0)) == 0) PANIC("tmpnam failed");
! 981: if(mkfifo(temp_name, S_IRUSR | S_IWUSR) != 0) PANIC("mkfifo failed");
! 982: command = popen("gnuplot","w");
! 983: fprintf(command,"plot \"%s\" with lines\n",temp_name); fflush(command);
! 984: data = fopen(temp_name,"w");
! 985: for (i=0; i<20; i++) {
! 986: a = i/10.0;
! 987: b = sin(a);
! 988: fprintf(data,"%f %f\n",a,b);
! 989: }
! 990: fclose(data);
! 991: fprintf(stderr,"press enter to continue..."); fflush(stderr);
! 992: getchar();
! 993:
! 994: fprintf(command,"plot \"%s\" with lines\n",temp_name); fflush(command);
! 995: data = fopen(temp_name,"w");
! 996: for (i=0; i<20; i++) {
! 997: a = i/10.0;
! 998: b = cos(a);
! 999: fprintf(data,"%f %f\n",a,b);
! 1000: }
! 1001: fclose(data);
! 1002: fprintf(stderr,"press enter to continue..."); fflush(stderr);
! 1003: getchar();
! 1004: pclose(command);
! 1005: unlink(temp_name);
! 1006: return 0;
! 1007: }
! 1008:
! 1009: Here's code for OS/2, again using named pipes; I'm unable to check
! 1010: this out myself. This code is care of fearick@physci.uct.ac.za
! 1011: (Roger Fearick).
! 1012:
! 1013:
! 1014: #include <stdio.h>
! 1015: #define INCL_DOS
! 1016: #define INCL_DOSPROCESS
! 1017: #define INCL_DOSNMPIPES
! 1018: #include <os2.h>
! 1019:
! 1020: main()
! 1021: {
! 1022: HPIPE hpipe ;
! 1023: FILE *hfile, *hgnu ;
! 1024: /* create a named pipe. Use NP_WAIT so that DosConnect...
! 1025: blocks until client (gnuplot) opens, and client reads
! 1026: are blocked until data is available */
! 1027: DosCreateNPipe( "\\pipe\\gtemp",
! 1028: &hpipe,
! 1029: NP_ACCESS_OUTBOUND,
! 1030: NP_WAIT|NP_TYPE_BYTE|1,
! 1031: 256,
! 1032: 256,
! 1033: -1 ) ;
! 1034: /* use stream i/o */
! 1035: hfile = fdopen( hpipe, "w" ) ;
! 1036:
! 1037: /* start gnuplot; use unbuffered writes so we don't need to
! 1038: flush buffer after a command */
! 1039: hgnu = popen( "gnuplot", "w" ) ;
! 1040: setvbuf( hgnu, NULL, _IONBF, 0 ) ;
! 1041:
! 1042: /* plot a set of data */
! 1043:
! 1044: fprintf( hgnu, "plot '/pipe/gtemp'\n" ) ; /* issue plot command */
! 1045: DosConnectNPipe( hpipe ) ; /* wait until 'file' opened */
! 1046: fprintf( hfile, "1 1\n" ) ; /* write data to 'file' */
! 1047: fprintf( hfile, "2 2\n" ) ;
! 1048: fprintf( hfile, "3 3\n" ) ;
! 1049: fprintf( hfile, "4 4\n" ) ;
! 1050: fflush( hfile ) ; /* flush buffer forces read */
! 1051: DosSleep( 500 ) ; /* allow gnuplot to catch up */
! 1052: DosDisConnectNPipe( hpipe ) ; /* disconnect this session */
! 1053: fprintf( hgnu, "pause -1\n" ) ; /* admire plot */
! 1054:
! 1055: /* plot another set of data */
! 1056:
! 1057: fprintf( hgnu, "plot '/pipe/gtemp'\n" ) ;
! 1058: DosConnectNPipe( hpipe ) ;
! 1059: fprintf( hfile, "1 4\n" ) ;
! 1060: fprintf( hfile, "2 3\n" ) ;
! 1061: fprintf( hfile, "3 2\n" ) ;
! 1062: fprintf( hfile, "4 1\n" ) ;
! 1063: fflush( hfile ) ;
! 1064: DosSleep( 500 ) ;
! 1065: DosDisConnectNPipe( hpipe ) ;
! 1066: fprintf( hgnu, "pause -1\n" ) ;
! 1067:
! 1068: DosClose( hpipe ) ;
! 1069: pclose( hgnu ) ;
! 1070: }
! 1071:
! 1072: ; The above code works for gnuplot 3.5. In gnuplot 3.7, this can be
! 1073: greatly simplified, since data can be fed 'inline, as in
! 1074:
! 1075:
! 1076: plot '-' w l
! 1077: 1 1
! 1078: 2 3
! 1079: 3 4
! 1080: e
! 1081:
! 1082:
! 1083: Section 7: Known problems
! 1084:
! 1085: Q7.1: Gnuplot is not plotting any points under X11! How come?
! 1086: Very probably, you still are using an old version of
! 1087: gnuplot_x11. Remove that, then do a full installation.
! 1088:
! 1089: On VMS, you need to make several symbols:
! 1090:
! 1091: $ gnuplot_x11 :== $disk:[directory]gnuplot_x11
! 1092: $ gnuplot :== $disk:[directory]gnuplot.exe
! 1093: $ def/job GNUPLOT$HELP disk:[directory]gnuplot.hlb
! 1094:
! 1095: Then run gnuplot from your command line, and use
! 1096:
! 1097: gnuplot> set term x11
! 1098:
! 1099: Q7.2: My isoline data generated by a Fortran program is not handled
! 1100: correctly. What can I do?
! 1101: One known cause for this is the use of list-directed output (as
! 1102: in WRITE(10,*) for generating blank lines. Fortran uses ASA
! 1103: carriage control characters, and for list - directed output
! 1104: this results in a space being output before the newline.
! 1105: Gnuplot does not like this. The solution is to generate blank
! 1106: lines using formatted output, as in WRITE(10,'()'). If you use
! 1107: carriage return files in VMS Fortran, you may have to open the
! 1108: file with OPEN(...,CARRIAGECONTROL='DTST') or convert it using
! 1109: the DECUS utility ATTRIB.EXE:
! 1110:
! 1111:
! 1112: VMS> ATTRIB/RATTRIB=IMPDTED FOR010.DAT
! 1113:
! 1114: Q7.3: Why does gnuplot ignore my very small numbers?
! 1115: Gnuplot treats all numbers less than 1e-08 as zero, by default.
! 1116: Thus, if you are trying to plot a collection of very small
! 1117: numbers, they may be plotted as zero. Worse, if you're plotting
! 1118: on a log scale, they will be off scale. Or, if the whole set of
! 1119: numbers is "zero", your range may be considered empty:
! 1120:
! 1121:
! 1122: gnuplot> plot 'test1'
! 1123: Warning: empty y range [4.047e-19:3e-11], adjusting to [-1:1]
! 1124: gnuplot> set yrange [4e-19:3e-11]
! 1125: gnuplot> plot 'test1'
! 1126: ^
! 1127: y range is less than `zero`
! 1128:
! 1129: The solution is to change gnuplot's idea of "zero":
! 1130:
! 1131: gnuplot> set zero 1e-20
! 1132:
! 1133: For more information,
! 1134:
! 1135: gnuplot> help set zero
! 1136:
! 1137: Q7.4: Gnuplot is plotting nothing when run via gnuplot <filename>!
! 1138: What can I do?
! 1139: Put a pause -1 after the plot command in the file.
! 1140:
! 1141: Q7.5: My formulas are giving me nonsense results! What's going on?
! 1142: Gnuplot does integer, and not floating point, arithmetic on
! 1143: integer expressions. For example, the expression 1/3 evaluates
! 1144: to zero. If you want floating point expressions, supply
! 1145: trailing dots for your floating point numbers. Example:
! 1146:
! 1147:
! 1148: gnuplot> print 1/3
! 1149: 0
! 1150: gnuplot> print 1./3.
! 1151: 0.333333
! 1152:
! 1153: This way of evaluating integer expressions is shared by both C and
! 1154: Fortran.
! 1155:
! 1156: Q7.6: My Linux gnuplot complains about a missing gnuplot_x11. What is
! 1157: wrong?
! 1158: The binary gnuplot distribution from sunsite.unc.edu and its
! 1159: mirrors in Linux/apps/math/gplotbin.tgz is missing one
! 1160: executable that is necessary to access the x11 terminal. Please
! 1161: install gnuplot from another Linux distribution, e.g.
! 1162: Slackware.
! 1163:
! 1164: Q7.7: set output 'filename' isn't outputting everything it should!
! 1165: You need to flush the output with a closing 'set output'.
! 1166:
! 1167: Section 8: Credits
! 1168:
! 1169: This list was initially compiled by John Fletcher with contributions
! 1170: from Russell Lang, John Campbell, David Kotz, Rob Cunningham, Daniel
! 1171: Lewart and Alex Woo. Reworked by Thomas Koenig from a draft
! 1172: by Alex Woo, with corrections and additions from Alex Woo, John
! 1173: Campbell, Russell Lang, David Kotz and many corrections from Daniel
! 1174: Lewart; Axel Eble and Jutta Zimmermann helped with the
! 1175: conversion to HTML.
! 1176:
! 1177:
! 1178:
! 1179: Thomas Koenig, ig25@rz.uni-karlsruhe.de, 1994-03-28
! 1180:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>