matlab之“花式”画图

众所周知,matlab是一个非常强大的画图工具。本人最近在matlab的画图技巧上小有一点心得,写个博客一来是方便自己查漏补缺,二来是希望能对大家有点帮助。

1.绘图画布及控制图形

在很多时候,我们画图时希望画布不是默认比例,而是与横纵坐标比相同的比例或特定的比例。此时我们可以使用如下两条命令来修改我们画图时的画布。

   set(gcf,'unit','centimeters','position',[8 4 16 4]);
   set(gca,'Position',[.1 .1 0.8 0.8]); 

对于第一条命令,这里的gcf指的是画布,[8 4 16 4]表示画布距离显示器左下角8,4厘米,而画布大小为宽16,高4厘米,是正好的4:1。而对于第二条命令,gca是控制坐标的,[.1,.1,0.8,0.8]是图形相对绘图区的比例,[.1,.1]是图形相对绘图区左下角的位置,[0.8,0.8]是图形相对绘图区的大小比例。大家可以按照自己的需求来设置特定的画布和图形所占比。

2.设置画图的坐标及刻度的使用

xlabel('Distance(m)');
set(gca,'FontName','Times New Roman','FontSize',18);
ylabel('Depth(m)');
set(gca,'FontName','Times New Roman','FontSize',18);

为了图的美观,我们会对标题会有一些特定的要求,xlabel是设置横坐标的标题的,ylabel是设置纵坐标的标题。与此类似的zlabel也是如此。而后面的语句是设置标题的字体的,这里设置的字体为Times New Roman,字体大小为18。

axis([0 880 0 220]);
axis equal;

我们还可以对刻度也进行相应的改变,第一个语句是控制横纵坐标的取值范围的,其中[0 880]是横坐标的取值范围,[0 220]是纵坐标的取值范围。axis equal是让图像随着横纵坐标的比例显示,这里横纵坐标比为4:1,所以图像的显示相应的也是4:1。

set(gca,'Xtick',[0:110:880],'Xticklabel',[0:550:4400]);
set(gca,'Ytick',[0:55:220],'Yticklabel',[0:275:1100]);

这里是设置横纵坐标的显示以及刻度的显示,Xtick是按原始输入的横坐标的刻度,这是是从0开始,每隔110显示一个。而我们可以将它修改,即使用Xticklabel,可以将图像按照自己想要的刻度进行显示。

set(gca,'TickDir','out');
set(gca,'XAxisLocation','top'); 

第一条命令是将刻度朝图像外面,而第二条命令是让横坐标的标题在上方显示。相应的也可以让纵坐标在右边显示。具体照第二条命令修改。

3.添加图例

c = colorbar('Eastoutside','FontSize',13);
c.Label.String = ('Velocity (m/s) ');
caxis([2000,6000]);
set(c,'ytick',[2000:1000:6000]);
c.Label.FontSize=22;

这里是设置速度图例,第一个命令是设置图例的位置以及字体大小。第二个是图例的名字,后面分别是刻度的取值范围、刻度的跨度以及相应的字体大小。

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值