找回密码
 立即注册
查看: 204|回复: 0

Matlab图形与图像处理(2.16-2.20)

[复制链接]
发表于 2023-3-30 16:23 | 显示全部楼层 |阅读模式
2.16 绘制分段函数
>> fplot(@(x) sin(x),[-pi/2 0],'b-')
>> hold on%%图形保持命令
>> fplot(@(x) x,[0 pi/2],'b*')
>> fplot(@(x) cos(x),[pi/2 pi],'r^')
>> hold off%%关闭图形保持命令



2.17 分别用fplot和plot绘制函数图形
>> x=linspace(pi,20*pi,50);%%创建一个pi到20pi的线性间隔向量x,元素个数为50
>> y=sin(x);
>> subplot(2,1,1),plot(x,y)%%将视图分割成2行1列两个子图,在第一个子图中,以x为横坐标,sin(x)为纵坐标
>> subplot(2,1,2),fplot(@(x) sin(x),[pi,20*pi])


上图不光滑的原因是将区间50等分,取值点太少
***plot和fplot的区别:两者都是图形绘制函数,所不同的是,plot针对任意变量x和y都可以绘制,而fplot则需要实现定义函数,用function命令定义函数,然后再fplot命令中引用函数的名字。
***Matlab中linspace函数的用法: linspace函数的作用是生成线性间距向量
y = linspace(x1,x2) 返回包含 x1 和 x2 之间的 100 个等间距点的行向量。
y = linspace(x1,x2,n) 生成 n 个点。这些点的间距为 (x2-x1)/(n-1)。
linspace 类似于冒号运算符“:”,但可以直接控制点数并始终包括端点。“linspace”名称中的“lin”指示生成线性间距值而不是同级函数 logspace,后者会生成对数间距值。
2.18 绘制正弦图形,并填充图形
>> x1=linspace(-10*pi,0.01*pi,100*pi);%%-10*pi到0.01*pi
>> x2=x1+pi/4;
>> y2=sin(x2);
>> subplot(121),plot(x1,y2,'k',x2,y2,'r')%%121:一行两列的第一列
>> subplot(122),fill(x1,y2,'k',x2,y2,'r')%%填充,第一个填充颜色为黑色,第二个填充颜色为红色


2.19 创建多种颜色的多边形
>> x=0:0.1*pi:100;
>> y=exp(cos(x));
>> c=y;
>> %%将函数表达式y赋值给c做颜色矩阵
>> subplot(2,1,1),patch(x,y,c)%%视图分割为2行1列,在第一个子图中使用x和y的坐标创建填充多边形,填充颜色由矩阵c决定
>> subplot(2,1,2)
>> patch(x,y,c,'EdgeColor','interp','Marker','o','MarkerFaceColor','flat');
>> %%通过颜色插值设置边的颜色,标记符号为圆圈,并使用标记颜色的顶点值设置标记的填充颜色



2.20 创建正弦曲线的多边形
>> x=-2*pi:0.01*pi:2*pi;
>> y=sin(x);
>> patch(x,y,[1 0 0])%%使用x和y的元素作为每个顶点的坐标,创建正弦函数的填充多边形,使用三原素向量指定填充颜色为红色

本帖子中包含更多资源

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

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-5-19 07:27 , Processed in 0.101209 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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