找回密码
 注册
关于网站域名变更的通知
查看: 453|回复: 1
打印 上一主题 下一主题

Matlab手动点取图形曲线数据并重画

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-16 09:26 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
) d" J/ X+ h5 E5 u  j
一次,在一篇paper上看到一张图,可惜里面的曲线数据没有提供。( ]' Y# v8 b9 S# m& T! [  g
那么如何利用这张图,自己获取数据呢?+ w' e3 G9 O) K; @$ T2 \; ]" e6 `
比如有下面这么一张图,我们要用鼠标取得曲线的数值,并记录下来:
5 _5 {" _7 @8 `6 m; F# m7 y# E
) Q: D' L7 X, D+ q8 x( o4 Nclear all;/ l1 y4 M! T5 w
clc;
- p2 r0 ~" W5 `( A1 @# b' U& f# a: [y=imread('./input.JPG'); %读取该图. N' S- I+ X1 u0 x
imshow(y); %显示该图# l1 D9 \3 E8 ~  N4 _" v; k
set(gcf,'outerposition',get(0,'screensize')); %使该图显示最大化,便于取点5 T! x* U$ [* X# J- R/ i5 Y# ?

, J0 d% E0 ?$ ^, \2 H. R# w  b2 l  p[x0,y0] = ginput;  %利用鼠标取点,按回车键结束。
% \1 h( S# c0 L9 o1 z%这个时候可以顺序点取图中坐标轴的,左下,左上,右上,右下四个点。
- L: k2 Q6 g2 J9 k6 K
, L" h) F1 v( O5 s( d  y2 w% n%存取角点坐标信息$ S  U  B. O! D7 J  B3 h* j6 z
save corner.mat x0 y0" n5 r% `6 y, V" d

) D" i8 F: O" D  D  W/ E%开始撷取其中一条实线上的点,按你需要的精度,点取任意多的点,回车结束
' Y* ?5 e: R  o) `: B6 l[x1,y1] = ginput;
9 [4 ^; |- \" [( O" C; Q* U. n9 d5 C, o9 I: s( u" ~
" c* X5 z: Y1 H* b/ O8 N
%存取曲线1的点源信息. f+ c8 W$ Y3 F, o6 D
save line1.mat x1 y1
# H* m- I8 Y6 ]9 C6 B6 s2 p
. x$ M3 I5 g# C9 N% \%其余曲线类推
& P- p, {. H. D# ~9 j8 V! \, S# {0 u1 s* G
%重画* x; K5 d5 A8 S! l8 I* |
%因为屏幕坐标是从左上角为坐标原点开始的,需要做些变换
" Y0 P: U$ _7 v# |- v6 h1 P& h0 j%四个角点对应的坐标为(0,0) (0,4),(8,4),(8,0)
* q/ ]2 e, Y; k; o3 J6 fx1 = (x1-min(x0))*8.0/(max(x0)-min(x0));
- ?' a4 V$ ]& r. p' cy1 = (y1-max(y1))*4.0/(min(y0)-max(y0));% ?, A* Y- q6 }$ i: F7 m, G
plot(x1,y1,'k.','Markersize',5);4 v6 K1 Y0 ]6 A  k& c9 v
axis equal;0 |' M0 a8 B: K  V2 [8 f2 [
axis([0 8 0 4]);+ h* N4 X( r) D
set(gcf,'outerposition',get(0,'screensize'));
: o' w/ y( |4 n- n% u" C* \4 `# s3 f7 |/ g

该用户从未签到

2#
发表于 2020-3-16 16:40 | 只看该作者
Matlab手动点取图形曲线数据并重画
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 04:30 , Processed in 0.156250 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表