声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2301|回复: 4

[图像处理] 如何填充两线直接的区域?

[复制链接]
发表于 2008-5-20 01:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
如何填充两条曲线之间的区域啊?
clc,clear;v=[70 73 76 79 82 85 88 91 94 97 100 103 106 109 112 115 118 121];a1=[0.27 0.27 0.24 0.24 0.24 0.21 0.21 0.21 0.18 0.18 0.18 0.15 0.15 0.15 0.15 0.15 0.15 0.15];a2=[0.34 0.34 0.3 0.3 0.27 0.24 0.24 0.24 0.21 0.21 0.18 0.18 0.18 0.16 0.16 0.16 0.16 0.16];p1=polyfit(v,a1,6);p2=polyfit(v,a2,6);f1=polyval(p1,v);f2=polyval(p2,v);plot(v,f1,v,f2)

[ 本帖最后由 ChaChing 于 2009-11-5 14:13 编辑 ]
未命名1.JPG
回复
分享到:

使用道具 举报

发表于 2008-5-20 06:53 | 显示全部楼层
 楼主| 发表于 2008-5-21 21:11 | 显示全部楼层
谢谢ch_j1985.
用上面方法画出来的图形如下,还有没有更好的办法来填充颜色呢?
未命名.JPG
发表于 2008-5-21 22:12 | 显示全部楼层
下面代码是《MATLAB原理与工程应用(第二版)》一书中关于填充的例子,希望此例子会对你有帮助
  1. x=linspace(0,6,100);
  2. plot(x,cos(x),'k-',x,1./cosh(x),'k-',[4.73,4.73],[-1,1],'k');
  3. xlabel('x');
  4. ylabel('Value of functions')
  5. title('Visualization of two intersecting curve')
  6. text(4.8,-0.1,'x=4.73')
  7. legend('cos(x)','1/cosh(x)',3)
  8. xn=linspace(0,4.73,50);
  9. hold on
  10. fill([xn,fliplr(xn)],[1./cosh(xn),fliplr(cos(xn))],'r')
复制代码

评分

1

查看全部评分

 楼主| 发表于 2008-5-23 14:22 | 显示全部楼层

回复 4楼 的帖子

谢谢ch_j1985的耐心解答.
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-18 02:28 , Processed in 0.060235 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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