Matlab中ruler2num函数的使用

本文介绍了MATLAB中的ruler2num函数,用于将日期值或其他非数值类型数据转换为数值。通过示例展示了如何使用该函数将日期时间值转换为数值,以便在设置文本对象的Position属性时使用。该函数适用于处理与DatetimeRuler、DurationRuler、NumericRuler或GeographicRuler相关的数据转换。
摘要由CSDN通过智能技术生成

目录

语法

说明

示例

将日期值转换为等效的数值


        ruler2num函数是将数据从特定的标尺转换为数值数据。

语法

num = ruler2num(data,ruler)

data - 输入数组

        输入数组,指定为标量、向量或矩阵。如果 data 已经是数值,则输出 num 等于输入 data

ruler - 标尺

        与输入数据相关联的标尺,指定为 DatetimeRuler、DurationRuler、NumericRuler 或 GeographicRuler 对象。使用 Axes 对象的 XAxis、YAxis 或 ZAxis 属性指定标尺对象。例如:

ax = gca;
num = ruler2num(data,ax.XAxis)

        如果指定 NumericRuler 对象,而输入 data 不是数值,则输出 num 由以下公式决定:

num = full(double(data))

        如果指定 GeographicRuler 对象,则输出 num 等于输入 data

说明

num = ruler2num(data,ruler)将 data 中的值转换为数值。ruler 输入表示与 data 关联的标尺,它决定如何将值映射到对应的数值。输出 num 的大小与输入 data 相同。

示例

将日期值转换为等效的数值

        将日期值转换为等效的数值,以便设置文本对象的 Position 属性。创建 x 轴为日期值的绘图。为第四个数据点添加文本说明,并返回文本对象。

t = datetime(2015,1,1:10);
y = [.2 .3 .5 .2 .8 .2 .3 .1 .3 .4];
plot(t,y,'-o')
txt = text(t(4),y(4),'My text');

        通过设置文本对象的 Position 属性,将文本的位置更改到第六个数据点。由于 Position 属性只接受数值,因此需要将第六个数据点的日期时间值转换为等效的数值。

t = datetime(2015,1,1:10);
y = [.2 .3 .5 .2 .8 .2 .3 .1 .3 .4];
plot(t,y,'-o')
txt = text(t(4),y(4),'My text');
ax = gca;
x6 = ruler2num(t(6),ax.XAxis);
txt.Position = [x6 y(6)];

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值