我有一个要绘制两列(日期,值)的数组
date = [2002 2003 2004 2005 ....] %sometimes 2003 2005 2006 2009 and so on%
value = [918.5345 918.5361 918.5354 ....]
当我按如下所示绘制散点图时:
subplot(3,1,1);
hold on;
scatter(date,value,'+');
grid on
xlabel('Time')
ylabel('Y(m)')
hold off
我想要设置标签以在y轴上显示值(例如918.5345)。
此外,x轴就是(date)...(例如2002 2003 2004 ...)上的值,而不是2002.5 2003.5
我使用Matlab R2016a
答案 0 :(得分:1)
在旧版本的MATLAB中,获取图形的tick属性的方法是使用set(gca,'XtickLabel')函数。这将“获取当前轴”并将x轴刻度标签设置为您提供的标签。在下面,我将tag(“ i”)设置为请求的整数。
date = [2002 2003 2004 2005]
value = [918.5345 918.5361 918.5354 918.6354]
plot(date, value)
title('Plot title');
hold on
xlabel('X Axis');
ylabel('Y Axis');
set(gca,'XTick',date)
set(gca,'XTickLabel',sprintf('%3.4i|',date))
set(gca,'YTick',value)
set(gca,'YTickLabel',sprintf('%+1.2i|',value))
hold off
要了解有关设置刻度标签的更多信息,请访问此处的MATLAB文档问答文档:https://www.mathworks.com/matlabcentral/answers/103188-how-do-i-format-tick-labels-before-r2016b