我的x轴从0到96,其中每个数字代表一天中的四分之一小时(96/4 = 24小时)。我需要轴显示小时0到24是不是有办法在图之后只修改轴?
答案 0 :(得分:1)
有几种方法。一个好的方法可能是改变图的x数据:
%# get handles of plot objects
chH = get(gca,'children');
%# for each child: divide the x-data by 4 and put it back
if length(chH) == 1
set(chH,'xdata',get(chH,'xdata')/4);
else
set(chH,{'xdata'},cellfun(@(x)x/4,get(chH,'xdata'),'uni',0));
end
xlim([0 24])
这将读取绘制到当前轴的对象的x数据,将其除以4,然后将其放回。然后将轴限制更改为0 ... 24
答案 1 :(得分:1)
您可以使用:
>> set(gca, 'XTick', 0:4:96);
>> set(gca, 'XTickLabel', 0:24);
例如:
>> plot(0:96,0:96)
>> set(gca, 'XTick', 0:4:96);
>> set(gca, 'XTickLabel', 0:24);
结果图: