MATLAB二维绘图如何去除没有数值的刻度线

在使用MATLAB绘图是,有时候并不想显示图窗右边和上边的刻度线,会觉得比较难看并且多余,如下图所示:

此时,如果我们仅仅使用“box off”,就会将坐标轴和刻度线同时取消掉,此时又会显示得比较空旷,如下图所示:

所以,参考了网上的一些方法,比如这位博主写的Matlab去除box图框上方和右侧刻度线的两种方法_matlab如何去掉坐标轴刻度线-CSDN博客,博主介绍了两种方法,并且都比较详细,但是第二种新建坐标法有点问题,就是当我从在图窗手动设置大小的时候,有时候会变形,比如下图,在最右端的10下面有点突出

该博主提到的第一种画线法挺好用的,但是需要绘制的线需要与坐标区完全一致才能完好看出没什么问题,所以本人在原方法上修改了一下,使用的时候不用考虑上述条件,直接无脑画图。该方法绘制出的线与原坐标轴可能有一点点区别,但是大差不差。首先需要指定X轴和Y轴的范围这样才能更好的找到坐标点,然后采用line命令画直线,不建议使用plot,因为line会在你当前的图窗上画,不需要考虑hold on;然后指定五个点(因为两点一条直线,所以需要五个点),左下,右下,右上,左上,左下,最后一个点就是第一个点,要不然会少画一条线,这样做的话会在当前的坐标轴上添加一条线,就相当于把之前的覆盖掉了嘛,然后统一线的宽度就可以了,实际效果如下:

这样画出的线你随便更改它的大小它都不会变形,并且省去了查看之前原坐标轴的相关信息

具体代码如下,只需要在绘图完毕后添加两行代码就行了,line命令的坐标根据坐标轴的最大值和最小值就能确定了

x = 1:0.001:10;   y = sin(x);
figure(); plot(x,y,'LineWidth',2.0);
xlim([-1,11]);ylim([-1,1]);
%关闭坐标轴线框
set(gca,"Box","off");
%绘制四条直线,定义颜色,设置线宽,最后一个参数的意思是将这四条直线的图例隐藏掉,你肯定不希望多出这四个图例
line([-1,11,11,-1,-1],[-1,-1,1,1,-1],'color','k','linewidth',1.0,'HandleVisibility','off');

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值