Engauge Digitizer is an open-source program designed to convert charts or maps provided as images into numeric data which can be exported as CSV and manipulated using Excel or other programs.
Though the internet offers large amounts of data on every conceivable subject, in many cases numeric data is presented in a chart that is only accessible for viewing as an image file.
Engauge Digitizer offers a quick and easy way to import all sorts of charts (including maps) and convert these into a very good approximation of the actual data they represent.
Here are some notes on this program:
- This program requires the user to manually identify certain basic information on the graph. For example, you will need to click on 3 points on the 2 axes of a graph (as well as their intersection point) and manually enter the values for these.
- Engauge supports 2 modes of data identification; manual digitization and automatic digitization, as explained below.
- Manual digitization, as the name implies, involves going over a chart and manually placing enough points on it as to eventually have an adequate representation of it. In this scenario you need not worry so much about removing unwanted information from the image since you placing the points yourself anyway.
- Automatic digitization is an option whereby the program will automatically hone in on a graph (or large segments of a graph), or you can outline a point on the graph and ask Engauge to hone in on all points that look like it. For the program to do these things correctly you need to eliminate all visual data that is not part of the graph or chart you are after. You can do this by using Engauge’s own filters, of which 2 (descretize and grid removal) are available. (You can also do a lot of cleaning up externally using an image editing program).
- You can use the “descretize” filter to make the chart/graph more discernable, especially if the color scheme in the image did not translate very well in Engauge’s monochromatic environment. The descretize dialog has many tools/options to do this, unfortunately it is somewhat confusing and unfriendly, but some experimentation will go a long way to get good results.
- I like the “grid removal” filter better. It does precisely that, but also features options that can eliminate other unwanted/unneeded data within a chart. These include removing all information that is of a certain color which you can select with a dropper tool, removal of lines parallel to the axes based on a few guidelines, and removal of pixels close to regularly spaced gridlines.
- Tutorial: an excellent tutorial is included that should get you going in no time at all.
Engauge offers some sophisticated abilities, including automatic curve tracing (for line plots), automatic point matching (for point plots), and automatic axes matching. It also can handle many types of graphs including cartesian, polar, linear as well as logarithmic graphs. And it is provided 100% free.
However, I cannot help but think that Engauge would be so much better with a few user-interface related improvements. The descretize filter dialog is overly complex and can profit greatly from some streamlining (after playing around with this one for a while, it occurred to me that I could get better results more quickly simply by cleaning the graph manually using an image editing program). The addition of a simple undo button for when you misplace a point or segment will also enhance this program significantly, as would an optional “zoom” function that can help when manually identifying points.
Having said that I will also say that if you put the time into it you will find that this program actually has a fairly short learning curve. And if you need the functionality that it provides it can produce excellent results.
Version tested: 4.1
Compatibility: Cross platform (WinAll, Linux).
Go to the program page to get the latest version (approx 6.97megs).