在Matlab中绘图时,如何获得良好的Y轴间隔?

在Matlab中绘图时,如何获得良好的Y轴间隔?,matlab,plot,Matlab,Plot,我正在尝试绘制一个向量(大小/值动态变化),该向量大约包含50-150个元素,值的范围从0.3331到1.7378(随机示例) 有没有办法画出这样的图 a) y轴上的值仅显示为小数点后2位。 b) y轴从最小值开始向下四舍五入到最接近的0.5,c)y轴在最大值结束,向上四舍五入到最接近的0.5,d)有10个间隔 因此,从最小值为0.3331和最大值为1.7378的示例来看,y轴将从0开始,在2结束 这是我设置间隔的尝试: yMin = floor(minValue) yMax = ceil(ma

我正在尝试绘制一个向量(大小/值动态变化),该向量大约包含50-150个元素,值的范围从
0.3331
1.7378
(随机示例)

有没有办法画出这样的图 a) y轴上的值仅显示为小数点后2位。 b) y轴从最小值开始向下四舍五入到最接近的0.5,c)y轴在最大值结束,向上四舍五入到最接近的0.5,d)有10个间隔

因此,从最小值为
0.3331
和最大值为
1.7378
的示例来看,y轴将从
0
开始,在
2
结束

这是我设置间隔的尝试:

yMin = floor(minValue)
yMax = ceil(maxValue)
yInt = yMin:(yMax-yMin)/10:yMax
一般来说,我是个编程新手,但这不是我想要的。我尝试了很多东西,但似乎都做不好。有人能为我提供解决方案吗?我将不胜感激

通过使用此代码,您可以向上或向下取整到某个值

minvallimit = floor(minval/roudingvalue)*roundingvalue
maxvallimit = ceil(maxval/roudingvalue)*roundingvalue
例如

0 = floor(0.3331/0.5)*0.5
2 = ceil(1.7378/0.5)*0.5
下一个主题:四舍五入到小数点后2位


我不太明白你在问什么。对于限制,我已经发布了一个解决方案。你只画两个小数位是什么意思?您刚才是否尝试了
绘图(myvec)
?仅在此处执行此操作还不够吗<代码>绘图(舍入(myvec*100)/100)?您的意思是:
maxvallimit=ceil(maxval/roudingvalue)*舍入值
roundedvalue = round(myval*100)/100