I have got many hundreds of old and not-so-old technical PDF files with plenty of diagrams lying around and I know the pain of digitizing the curves and converting measurements back into the original units.

Lighbulb characteristics

What I would like to see is a semi-automated workflow that could take as an input a cropped image, possibly ask me some questions or make me point-and-click at the picture and output (x,y) pairs for each curve (either raw data at each pixel, or post-processed splines).

Input formats:

  • Any raster image format will do, PNG and JPEG will be fine, ability to accept raw PDF - outstanding

Output formats:

  • CSV is OK.

Highly desirable:

  • Ability to work with noise introduced during scanning
  • Ability to cope with multiple curves of same or different colors and patterns
  • Ability to process logarithmic axes
  • Ability to process nomograms

Non-essential requirements:

  • Gratis
  • Portable (Windows, Linux)

Related: Extract numbers from a figure (to my mind, not a duplicate because of different requirement sets).

  • 1
    The closest thing I know is Datathief, but it analyzes the curves based on their color and continuity. That means it wouldn't work well on dashed or intersecting curves of the same color. It might be still worth checking
    – Tymric
    Commented Oct 16, 2014 at 16:32
  • 1
    @Timmy - upvoted, thanks for the link. I'm not sure it's a dupe, the requirements differ a bit. Commented Oct 16, 2014 at 16:37

1 Answer 1


Finally got to answer the question thanks to a post on TeX StackExchange.

The program that meets my requirements is Engauge Digitizer (current version 5.2).

Graph 1

Graph 2

  • PNG, BMP, JPEG import
  • CSV export
  • Gratis, open source
  • Logarithmic axis allowed
  • Can automatically trace lines
  • Point matching is kind of iffy
  • Based on Qt4 toolkit, portable, easily compiled on Linux (requires FFTW 3.1.2 or later)
  • NOTE Sometimes crashes due to bugs in binary format parsing, thus one shall save the project after digitizing each curve
  • CAUTION Hosted on SourceForge, one should strive to build the program from the source to avoid any SF-related unpleasantness
  • Doesn't consume much RAM (unlike Java-based Plot Digitizer, which is stable, but doesn't export to CSV)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.