matlab作图汇总

首先推荐一篇matlab绘图的博文:https://blog.csdn.net/sunyueqinghit/article/details/81905509

一.二维图

1.二维曲线图

程序

x = 0:0.25:12;
y1 = x.^2;
y2 = 12 - x;
plot(x, y1, x, y2)
xlabel('x');ylabel('y');
%产生图例
legend('y1=x^2', 'y2=12-x');
title('马驰绘制');
%图中x轴和y轴的范围,中括号前面是y轴范围,中括号后面是x轴范围
axis([0 15 0 15]);
text(3, 9, '交点');
%画图时加上网格线
grid on

效果

2.含选项的plot函数

Matlab提供了一些绘图选项,用于确定所绘曲线的线性、颜色和数据点标记符号。这些选项如表所示:

线型颜色标记符号
- 实线b 蓝色. 点s 方块
: 虚线g 绿色o 圆圈d 菱形
-. 点划线r 红色× 叉号∨朝下三角符号
-- 双划线c 青色+ 加号∨朝下三角符号
 m 品红* 星号<朝左三角符号
 y 黄色 >朝右三角符号
 k 黑色 p 五角星
 w 白色 h 六角星

 

 

 

 

 

 

 

 

 

3.双纵坐标函数plotyy

在Matlab中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy函数,它能把具有不同量纲,不同数量级的两个函数绘制在同一个坐标中,有利于图形数据的对比分析。使用格式为:plotyy(x1,y1,x2,y2)

x1,y1对应一条曲线,x2,y2对应另一条曲线。横坐标的标度相同,纵坐标有两个,左边的对应x1,y1数据对,右边的对应x2,y2。

4.散点图

参考博文:https://blog.csdn.net/xuxinrk/article/details/80212221

 

二.三维图

1.三维曲线图

程序

t = 0:pi/50:2*pi;
x = 8 * cos(t);
y = 4*sqrt(2)*sin(t);
z = -4*sqrt(2)*sin(t);
%三维曲线作图函数plot3
plot3(x, y, z, 'p');
title('Line in 3-D Space');
text(0, 0, 0, 'origin');
xlabel('X');
ylabel('Y');
zlabel('Z');
grid;

效果

2.三维网格图

代码

% 数据准备 
t=0:pi/10:pi; 
x=sin(t); 
y=cos(t);  
[X,Y]=meshgrid(x,y); 
z =X + Y;    
% 绘图 
figure
%绘制三维网格图 
mesh (z,'FaceColor','W','EdgeColor','K')
grid 
title('三维网格图'); 

效果

3.三维表面图

代码

xx = linspace(-1,1,50);
yy = linspace(-2,2,100);
%使用meshgrid函数生成数据网格,画三维图时必须生成二维坐标
[x,y] = meshgrid(xx, yy);
z = x.^2 + 2*y.^2;
%surf是matlab画三维表面图的函数
surf(x, y, z);

效果

 

4.等高图

代码

[x,y,z]=peaks;

subplot(1,2,1);

plot3(x,y,z);

contour(x,y,z)   %绘制三维等高图

 subplot(1,2,2);

surfc(x,y,z) %同时绘制等高图和曲面图

5.伪色图

概念:用带栅格的二维阴影图代替等高图中的轮廓线。

[x,y,z]=peaks;

subplot(2,2,1);

pcolor(x,y,z);

title('绘制伪色图')

 

subplot(2,2,2);

pcolor(x,y,z);

shading interp;

title('去掉了三维图形的网格')

 

subplot(2,2,3);

pcolor(x,y,z);

shading interp;

hold on;

contour(x,y,z,20,'k')

title('在图形上叠加等高线')

 

subplot(2,2,4);

contour(x,y,z)

title('普通的等高图')

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值