很多时间看到别人的散点图,拆线图,柱状图,要取出其原始数据的近似值比较困难,现有简单方法如下:
基本思路:
-读入图片;
-确定原点,坐标轴在图片上的像素范围;
-确定图片坐标轴数据范围 ;
-用比例算法算出坐标近似值;
-用生成的近似坐标重新生成图片;
A=imread(‘test.jpg’);
figure(1)
imshow(A);
[XC,YC]=ginput(3) %分别点原点,纵坐标顶点,横坐标顶点;
[XX,YY]=ginput(20) %假设要取20个数据点,或者用[XX,YY]=ginput取任意多个点,按回车结束。
x=(XX-XC(1))/(XC(3)-XC(1))(Xmax-Xmin)+Xmin %这里需要指定Xmax, Xmin;
y=(YY-YC(1))/(YC(2)-YC(1))(Ymax-Ymin)+Ymin %这里需要指定Ymax, Ymin;
figure(2)
plot(x,y) %生成新的曲线。
这是最简单的方法,但日常使用最多。那个生成二值图的方式在散点图,柱状图时不适用。