link to main US Geological Survey website
U.S. Geological Survey
Open-File Report 2005-1311
Version 2.0

SEGY to ASCII Conversion and Plotting Program 2.0

By Mark. R. Goldman

x-y plot


SEGY has long been a standard format for storing seismic data and header information. Almost every seismic processing package can read and write seismic data in SEGY format. In the data processing world, however, ASCII format is the "universal" standard format. Very few general-purpose plotting or computation programs will accept data in SEGY format.

The software presented in this report, referred to as SEGY to ASCII (SAC), converts seismic data written in SEGY format (Barry et al., 1975) to an ASCII data file, and then creates a postscript file of the seismic data using a general plotting package (GMT, Wessel and Smith, 1995). The resulting postscript file may be plotted by any standard postscript plotting program.

There are two versions of SAC: one version for plotting a SEGY file that contains a single gather, such as a stacked CDP or migrated section, and a second version for plotting multiple gathers from a SEGY file containing more than one gather, such as a collection of shot gathers. Note that if a SEGY file has multiple gathers, then each gather must have the same number of traces per gather, and each trace must have the same sample interval and number of samples per trace.

SAC will read several common standards of SEGY data, including SEGY files with sample values written in either IBM or IEEE floating-point format. In addition, utility programs are present to convert non-standard Seismic Unix (.sux) SEGY files and PASSCAL (.rsy) SEGY files to standard SEGY files.

SAC allows complete user control over all plotting parameters including label size and font, tick mark intervals, trace scaling, and the inclusion of a title and descriptive text.

SAC shell scripts create a postscript image of the seismic data in vector rather than bitmap format, using GMT's pswiggle command. Although this can produce a very large postscript file, the image quality is generally superior to that of a bitmap image, and commercial programs such as Adobe Illustrator® can manipulate the image more efficiently.


This directory contains the source code and shell scripts necessary to convert SEGY files to ASCII format and to create postscript plots, along with a makefile and a README file. This directory also contains a subdirectory with an example SEGY file, ASCII file, shell script file, and resulting postscript file. As a test, one can run the shell script file to recreate the xyz and postscript files.

The shell scripts run using the csh shell command interpreter, which is present on most Unix systems. A requirement for compiling the source code is a C++ compiler The C++ programs documented here have been successfully compiled using Gnu's g++ version 3.3.2. The g++ compiler is a free C++ compiler and may be downloaded from the web site:

A requirement for plotting the seismic data is the GMT plotting package. The shell scripts documented here have successfully produced postscript files using Gmt version 3.3.4. The GMT plotting package is a free set of plotting routines, and may be downloaded from the web site:

Download this report as a 10-page PDF document (of2005-1311.pdf; 136 KB)

Download SEGY to ASCII as a .tar file (of2005-1311.tar; 6.8 MB)

This report supercedes USGS Open-File Report 99-126 that used obsolete C++ code, that will not compile on a newer C++ compiler.

For questions about the content of this report, contact Mark Goldman

Version history

Download a current version of Adobe Reader for free

| Help | PDF help | Publications main page | Open-File Reports for 2005 |
| Privacy Statement | Disclaimer | Accessibility |
| Geologic Division | Earthquake Hazards Program |

This report is available only on the Web

| Department of the Interior | U.S. Geological Survey |
URL of this page:
Maintained by: Michael Diggles
Date created: November 17, 2005
Date last modified: December 2, 2005 (mfd)