You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Matlab自定义X轴刻度标签:保留自动刻度值的获取方法

获取Matlab自动生成的X轴刻度值并自定义标签

其实操作很简单,你可以通过xticks()函数直接获取当前自动生成的刻度位置(也就是你提到的tickValues),具体步骤如下:

  • 先完成基础绘图:
    y = data; 
    x = timeInSec; 
    plot(x , y);
    
  • 调用不带参数的xticks(),就能获取当前显示的自动刻度位置:
    tickValues = xticks;
    
  • 接着用你自己的逻辑把这些刻度值转换成小时分钟格式的标签,再设置回坐标轴:
    timeInHrMin = datestr(tickValues, 'HH:MM');
    xticklabels(timeInHrMin);
    

额外提个小细节:如果之后你调整图像窗口大小或者进行缩放操作,Matlab可能会重新自动生成刻度。要是想固定刻度位置不让它变动,可以在获取tickValues后,再加一行xticks(tickValues)把刻度位置锁定,这样后续调整窗口时刻度位置就不会改变了:

tickValues = xticks;
xticks(tickValues); % 固定刻度位置
timeInHrMin = datestr(tickValues, 'HH:MM');
xticklabels(timeInHrMin);

内容的提问来源于stack exchange,提问作者Steeven

火山引擎 最新活动