The FIG graphics format is a vector drawing format which can be used with programs such as xfig to produce simple figures for documents.

Note that MATLAB will produce a proprietary graphics file format called the MATLAB Figure format, saved in a file with a ".fig" extension. As far as I know, none of the programs described herein handle that particular format.



Associated Software

The following programs use some version of FIG.

  • Editors
    • WinFIG - a native MS Windows FIG editor
    • Xfig is the primary FIG editor. A separate page has been created for information on xfig and ports of xfig.
    • jfig (formerly JavaFIG) is a Java applet which runs a FIG viewer and editor for Java platforms. Author: Norman Hendrich.
    • fig (Facility for Interactive Generation of figures) is the original FIG program, written to use the now defunct SunView windowing system. Author: Supoj Sutanthavibul. Modifications: Frank Schmuck, Micah Beck. Last known version: 2.1 release 1, FIG version 2.1 supported.
    • Windows and FIG - More information on FIG and MS Windows.
    • xdraft (AKA dr) is an editor which can read/write FIG format files. For Linux. Author Ed Falk.
    • Figurine - X11 FIG editor. Licensed under the GPL.
    • Karbon (formerly Killustrator then Kontour) is a vector drawing program for KDE. Partially supports reading FIG 3.1 files. Does not write FIG format output.
    • Dia - A diagram editor based on gtk+. Imports FIG files.
    • INCA is a TCL/Tk based editor for graph drawing. FIG output. Author: Olivier Baudon
    • Skencil (formerly Sketch) supports FIG input. Does not support FIG output.
  • Conversion Programs
    A note on conversions - xfig and transfig will accept older FIG formats and work with them. However, xfig will only save to its native version, and will not read newer versions. Old conversion programs which produce older versions of FIG files will still be of value, but those which only read older versions of the FIG format may not work with current software.
    1. From FIG to other formats
      • Transfig (available from the X11 ftp site or the Lawrence Berkeley National Laboratory) is a package containing the FIG to output converter fig2dev. This will convert files in the normal FIG format to formats better suited for printing such as PostScript, or for inclusion in documents (e.g. LaTeX). (Current version is 3.2.4.) Transfig is required by xfig, as xfig uses this to produce most of its output.
      • figbuild is a program which will take a FIG 3.1 or 3.2 file and a height file and create a three dimensional model for a program called Radiance. Author: Peter Apian-Bennewitz.
      • Xfig2sml is a tool to create kivio stencils, and Open Office drawings. (AKA OpenOffice, StarOffice, sxd graphics files.)
      • fig2sxd converts to Open Office format. (Linux and Windows binaries available.)
      • xfig2idraw - perl scripts to convert FIG and TGIF's OBJ format to idraw's format. By Shinji Kono, documentation in kanji.
      • PPR is PostScript printer spooler. It contains a script to convert FIG files to PNG format via Ghostscript.
    2. Bidirectional
      • mifXfig - converts between FrameMaker's MIF format and FIG (both ways). Author: Mikael Lundqvist.
      • MetaView is a vector graphics viewer and converter for the Amiga. Reads FIG 3.1 files and converts them to other vector formats. Will also write FIG format files from other formats. Current version 2.6. Author: Henk Jonas. Available through Henk's homepage.
      • GRASS GIS has a converter to convert both ways between its native format and FIG 3.2. (grass2fig and fig2grass) Author: Jacques Bouchard
    3. To FIG from other vector formats
      • pstoedit - will convert PostScript and PDF to FIG (and other formats) via Ghostscript or another PostScript interpreter. Current version 3.31. FIG version 3.2. Author: Wolfgang Glunz. Hints for FIG and pstoedit.
      • hp2xx - will convert HPGL files to FIG format. Requires version 3.3.0 or better. Produces FIG version 3.1 output. Author: Heinz Werntges.
      • dxf2fig is a program to convert AutoCAD DXF format to FIG. Author "lemmens".
      • dpic is a PIC like interpretor which can convert PIC format to FIG 3.1 format, among others. (See the circuit macros for LaTeX on this page as well.)
      • pic2fig - converts PIC (nroff/troff style pictures) to FIG. Available via FTP from the X11 ftp site. See also the pic2plot function in plotutils.
      • plot2fig converts UNIX plot(4) format files to FIG format. This uses FIG 2.0, and is available from a few FTP sites. Written by Richard Murphey in 1990, while at Rice University. (See plotutils below.)
      • Tek2plot will convert Tektronix 40xx graphics code to FIG via plotutils.
      • pic2plot will convert PIC code to FIG via plotutils.
      • Fig driver for S - also called sfig, s2xfig, or s2fig. Fig 2.1 driver for the S/SPlus package. Available from the StatLib archive. Original author Peter Dalgaard, updated by Gary Houston (latter version currently unavailable). See also the R statistical package.
      • cdraw2fig translates pictures from "Cheap Draw" format to FIG 1.4. (Cheap Draw was a drawing package written for UNIXPC computers.) Author: Mark Hartman. Originally posted to comp.sources.3b1 in March 1991.
      • wmftofig - A program to convert MicroSoft windows metafile format, or wmf, to FIG 3.2. Part of libwmf. Also see the wvWare webpage for more information.
      • cgm2fig available via this Russian site. (Note: Russian text only - Cyrillic font required.) This seems to use RALCGM and tcl to produce FIG 3.2 files. Author: Boris Tobotras
    4. To FIG from raster formats
      These programs will convert bitmap files to vector FIG files. (They perform both vectorisation and conversion to FIG.) Vectorization
      • AutoTrace will convert PBM, PGM, PPM and IMG bitmaps to FIG 3.2 format. Current version 0.31.1.
      • Potrace will convert PBM, PGM, and PPM format bitmaps into FIG 3.2 format.
  • Libraries
    • The GNU Plotting Utilities (plotutils) are similar to the UNIX plot(4) related utilities, but include an option to save to FIG format files. The current version of plotutils is 2.4.1, supporting FIG version 3.2.
    • XFig library for Standard ML programming.
    • PLplot, another plotting library, has a driver for FIG 3.2.
    • The NORA programming interface allows the user to save graphics in FIG format.
  • Utilities
    • FeynFig is a FORTRAN program to generate Feynman diagrams in FIG format. Author: Gavin Salam. Current version: 1.2b (FIG version 3.1).
    • Gnuplot - A plotting package which will produce FIG output. Gnuplot 4.0, the current version, supports FIG 3.1. (sourceforge site)
    • fig2sty - uses FIG files to produce fancy layouts with LaTeX. Includes, a PERL module to parse FIG files.
      • See also the ShapePar patch for current xfig beta.
      Author: Marcel Rohner
    • The Stereoscopic Editor exports to FIG 3.1 format. By Marcin Kik.
    • Bernhard Reiter's utilities produce FIG format barcharts via gnuplot and piecharts via GNU plotutils.
    • R, a statistical package, has an XFig driver.
    • SLxfig - utility to permit S-Lang scripts to create pictures via xfig2dev.
    • xfigutilities - xfigbar and xfigpie are two C programs which produce bar graphs and pie charts in FIG format. Current version supports FIG 3.1. Author: John Conover.
    • creates bar graphs in FIG 3.2 from tabular input. Author Michael Pronath.
    • SciLab - Matrix calculation package, includes FIG 3.1 output driver.
    • xgraph - A plotting program. This version produces FIG 2.1 output.
    • The IRIT solid modeller includes a converter (irit2pov) for FIG output.
    • The EasyMesh mesh generator saves to FIG and DXF formats.
    • The abs spreadsheet exports to a FIG format file. (GPL'ed software - source available.)
    • Treefig is a tool to create tree graphs from a text file. This uses FIG 2.1.
    • Treeplot - phylogenetic tree file converter. Exports to FIG.
    • Ebnf2ps generates syntax diagrams from EBNF specifications. This uses FIG 3.1. Author Peter Thiemann.
    • Chemtool is a molecule representation drawing tool. It produces FIG 3.2. Author Thomas Volk.
    • WHAT IF, a protein structure analysis program, includes a SETFIG command to generate FIG plots.
    • Tv - spectra- and matrix-analysis program - saves to fig format. Contact Andreas Fitzler.
    • BoxShade is a program which pretty prints multiple alignment files. One of the output formats is FIG.
    • Xmgf is a 3D file viewer, which will save 2D output as FIG 2.1.
    • ImageMagick is a package which will manipulate images in various formats. It uses transfig to create image files from FIG files.
    • VSM is a visualisation package for sparse matrices. Output includes FIG 2.1 format.
    • PlotMarkers is a program which draws linkages. FIG 3.1.
    • Msphinx is a satellite image processing program with direct links to XFig.
    • TUD DD Decision Diagram package which produces FIG 3.1 output. Author: Stefan Höreth
    • Slidemaker produces PDF slideshows from FIG files.
    • td program which works with xfig to draw network topologies.
    • TCM The Toolkit for Conceptual Modeling is a suite of programs to produce graphs, trees, etc. for program structure. Exports FIG.
    • ViTAN Visualization Tool for Ad Hoc Networks - creates connectivity graphs for wireless networks.
Ian MacPhedran