• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

c.Matlab(数据和函数的可视化)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 A.二维曲线绘图的基本操作

1.plot基本调用格式

 

close all;
x=[1,2,3,4,5;4,5,6,7,8;7,8,9,10,11];%生成随机整数矩阵,大小为5X3,范围在1-10中
y=(-2:2)\';
figure,plot(x);%x矩阵有5列,所以有五条线,每列三个值,把这三个数连起来,列数为自变量,每一列对应的所有元素元素为因变量
figure,plot(y,x);%y为自变量,y的元素个数等于x的列数,x的每一行为因变量
figure,plot(x,y);%x为二维数组,y为向量,x的每一列为自变量,y的元素为因变量

  

2.用图形表示连续调制波形及其包络线

t=(0:pi/100:pi)\'; %长度为101的时间采样列向量
y1=sin(t)*[1,-1]; %包络线函数值,是(101x2)的矩阵
y2=sin(t).*sin(9*t); %长度为101的调制波列向量
t3=pi*(0:9)/9;%过零点
y3=sin(t3).*sin(9*t3);
plot(t,y1,\'r:\',t,y2,\'b\',t3,y3,\'bo\')

% plot(t,y1,\'r:\')
% hold on
% plot(t,y2,\'b\')
% plot(t3,y3,\'bo\')

%hold off

axis([0,pi,-1,1]) %控制轴的范围

  

 3.双纵坐标

x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
figure,plotyy(x,y1,x,y2)

 

 B.多子图

 

 

close all
t=(pi*(0:1000)/1000)\';
y1=sin(t);y2=sin(10*t);y12=sin(t).*sin(10*t);
subplot(2,2,1),plot(t,y1);axis([0,pi,-1,1])
subplot(2,2,2),plot(t,y2);axis([0,pi,-1,1])
subplot(\'position\',[0.2,0.05,0.6,0.45])
% 假设整个图形窗口长宽都是1
% [0.2,0.05,0.6,0.45]
%0.2表示图像离最左端的距离为0.2
% 0.05表示图像离底端的距离为0.05
% 0.6表示图像的宽为0.6
% 0.45表示图像的高为0.45
plot(t,y12,\'b-\',t,[y1,-y1])

  

 

 

t=0:pi/100:2*pi;
x1=1.15*cos(t);
y1=3.25*sin(t);
x2=0.55*cos(t);
y2=1.25*sin(t);
x3=3*cos(t);
y3=3*sin(t);
subplot(2,2,1),plot(x1,y1),axis([-4 4 -4 4]);
subplot(2,2,3),plot(x2,y2),axis([-4 4 -4 4]);
subplot(\'position\',[0.6,0.1,0.3,0.8]),plot(x3,y3),axis([-4 4 -4 4]);

  

  

 

C.辅助画图

1,线形,颜色,点形

 

 

t=(0:15)*2*pi/15;
% 0到2pi范围内有十五个点,想改几个点改几个点
y=sin(t);
subplot(3,2,1), plot(t, y); title(\'Lins style is default\')
% 默认是蓝色的实线,实点
subplot(3,2,2), plot(t, y, \'o\'); title(\'Lins style is o\')
% 蓝色的点,不写线形的话就没线
subplot(3,2,3), plot(t, y, \'k:\'); title(\'Lins style is k:\')
% 黑色的,虚线,没点
subplot(3,2,4), plot(t, y, \'k:*\'); title(\'Lins style is k:*\')
% 黑色,虚线,点用*点描
subplot(3,2,5), plot(t, y, \'m-d\'); title(\'Lins style is m-d\')
% 点是菱形品红色,用实线连起来
subplot(3,2,6), plot(t, y, \'r-p\'); title(\'Lins style is r-p\')
% 红色,实线,五角星符号

  

 

 

 

2.坐标控制

 

3.刻度、分割线、坐标框

 

 

 

t=6*pi*(0:100)/100; %等效于[0:1/100:1]*6*pi 0~6pi
y=1-exp(-0.3*t).*cos(0.7*t);
tt=t(abs(y-1)>0.05); %y值在-0.95~1.05区间外的点
% tt=t(find(abs(y-1)>0.05))
ts=max(tt); %何时收敛
plot(t,y,\'r-\');
grid on; 
axis([0, 6*pi,0.6,max(y)]); 
% 坐标轴范围
title(\'y=1-exp(-\alpha*t)*cos(\omega*t)\');
hold on;
yts=1-exp(-0.3*ts).*cos(0.7*ts);
plot(ts,yts,\'bo\');
% 标出收敛的点
hold off;
set(gca,\'xtick\',[2*pi,4*pi,6*pi],\'ytick\',[0.95,1,1.05,max(y)]); 
% 刻度设置
grid on;
% 画出分割线

  

 

 

 

 

 

 

 4.图形标识

a、基本图形标识

 

 

 b、字体形式设置 

 

 

 

 

例1

t=(0:100)/100*2*pi;
y=sin(t);
plot(t, y)
text(3*pi/4,sin(3*pi/4), \'\fontsize{16}\leftarrowsin(t) = .707 \')
% 16号字体,左箭头,要写的东西
text(pi, sin(pi), \'\fontsize{16}\leftarrowsin(t) = 0 \')
text(5*pi/4, sin(5*pi/4), \'\fontsize{16}sin(t) = -.707\rightarrow\',...
\'HorizontalAlignment\',\'right\')%设置图形标识为水平右对齐,默认左对齐

 

 

 例2

t = 0:900;
plot(t,0.25*exp(-0.005*t))
title(\'\fontsize{16}\itAe^{\alphat}\');
text(300,.25*exp(-0.005*300),...
    \'\fontsize{14}\leftarrow0.25\ite^-0.005\itt at \itt = 300\');
%      14号字体    左箭头再写0.25 斜体写e^-0.005t at t=300
% text(300,.25*exp(-0.005*300),...
%     \'\fontsize{14}\leftarrow0.25\ite^-0.005t at t = 300\');

 

 

 D.特殊图形

1.直方图

a.累计式直方图

x = -2.9:0.2:2.9;
bar(x,exp(-x.*x),\'r\')

 

 

 

 

 

 

year=[1990 1995 2000];
people=[90.7 281.6 254.8; 70.6 271 323.7; 73.9 214.6 326.5];
bar(year, people, \'stack\');
%barh(year, people, ‘stack’); % 横向累积式直方图
legend(\'\fontsize{6}第一产业\', \'\fontsize{6}第二产业\', \'\fontsize{6}第三产业\');

 

 

 

 

b.分组式直方图

 

year=[1990 1995 2000];
people=[90.7 281.6 254.8; 70.6 271 323.7; 73.9 214.6 326.5];
bar(year, people, \'group\'); % 分组式直方图
 %barh(year, people, ‘group’); % 横向分组式直方图
legend(\'\fontsize{6}第一产业’, ‘\fontsize{6}第二产业’, ‘\fontsize{6}第三产业\')

  

 

 2.饼状图

a=[1,1.6,1.2,0.8,2.1];
subplot(1,2,1),pie(a,[1 0 1 0 0]),% 1对应的部分会突出
legend({\'1\',\'2\',\'3\',\'4\',\'5\'})
subplot(1,2,2), b=int8(a==min(a));
% a是否是最小的,是的话b取1,生成一个布尔型的矩阵,int8强制转换成数据型
pie3(a,b)% 突出b这一部分
colormap(cool)

  

 

 

3.各种图

x = 0:0.35:7;
y = 2*exp(-0.5*x);
subplot(2,2,1);bar(x,y,\'g\');
% subpolt没逗号也可以,但是要养成好习惯
title(\'bar(x,y,\'\'g\'\')\');axis([0,7,0,2]);% 条形图
subplot(222);fill(x,y,\'r\');
title(\'fill(x,y,\'\'r\'\')\');axis([0,7,0,2]);%填充图
subplot(223);stairs(x,y,\'b\');
title(\'stairs(x,y,\'\'b\'\')\');axis([0,7,0,2]);% 阶梯图
subplot(224);stem(x,y,\'k\');
title(\'stem(x,y,\'\'k\'\')\');axis([0,7,0,2]);% 离散杆图

 

 

 

4.极坐标图

 

theta = 0:0.01:2*pi;
rho = sin(2*theta).*cos(2*theta);
polar(theta,rho,\'k\');
% 极坐标自动会加网格线,与xy坐标不同

  

 

 

E.三维图

1.三维线图

t=(0:0.02:2)*pi;
x=sin(t);
y=cos(t);
z=cos(2*t);
plot3(x,y,z,\'b-\',x,y,z,\'bd\');
% 先画蓝色的实线,再画蓝色的菱形线,菱形在点上
view([-83,58]);
% 规定看的视角,方位角逆时针转的角度是负的,俯仰角
box on
%长方体的边边
legend(\'链\',\'宝石\')

  

 

 

 

 

2.网线图,曲面图,等高线

x=-4:4;y=x;
[xa,ya]=meshgrid(x,y); %生成 x-y 坐标“格点”矩阵
% x取-4到4(9个数),y取-4(9个数),这样可以画出一条线
% x取-4到4(9个数),y取-3(9个数),这样可以画出第二条线
%有九条线
z=xa.^2+ya.^2; %计算格点上的函数值
subplot(1,3,1), mesh(x,y,z); %三维网格图
subplot(1,3,2), surf(x,y,z); %三维曲面图
subplot(1,3,3), contour(x,y,z); %等高线,高的颜色亮,低的颜色深
colormap(hot);

  

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
用Matlab对表格导出的数据进行可视化发布时间:2022-07-18
下一篇:
matlab 数据可视化发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap