% This code is used to digitize figures that you find in publications, journals, or simply scanned reports or documents by clicking on the desired points using the mouse.
% You can use it to pick [x,y] points by clicking on the original scanned plot.
% To run, simply type:
% and then follow the instructions
% 1- Plots or figures should be of jpg, png, bmp or any other format that is
% acceptable by matlab and in the same directory as these m-files you are using.
% 2- You don't have to select the points in increasing or decreasing
% order. Click wherever you want on the plot. I have written a small code
% to sort the vectors in ascending order
% 3- The [x,y] data points will be saved in GRABBED.mat. Load
% GRABBED.mat and the first column of GRABBED will be your absisca points, the second
% are the ordinates.
% This code is written by
% Nassim Khaled
% June 2007
Important:Change imshow to imagesc for people without Image Processing Toolbox.
Very helpful indeed. My problem is that the y axis of the picture/figure that I am trying to get data from is a log scale. How would you suggest I manipulate the data to show that the scale is in fact a log scale and not a linear one which this script assumes? I can clarify further is the question is not clear.
Thanks, really appreciate it!
This worked fairly well, but I would suggest suppressing all of the save commands. It makes it fill up any folder that you run it in with x_min.mat, x_max.mat...etc. Also, I would suggest prompting for the user for the name to save the data. The following works well:
[FileName,PathName,FilterIndex] = uiputfile('*.mat','Save File As');
save(FileName, 'X', 'Y')
Also, can this accomidate a skewed image, for example in an old school scanned image, the angle between the axis might not equal 90 degrees.
Suggestions for improvements:
- Change imshow to imagesc to make available for people without Image Processing Toolbox.
- The matlab axis should be changed to the one in the scanned picture after given this input.
- Include log axis
- Include the possibility of rotated image (see digitization by Harald E. Krogstad)
- Don't close the "working" window
Comes in handy when needed.
I have made use of one of the comments to modify the submission.
I made an update on one of the m-files.
I have to include some .*fig files that were missing.
Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.