无法在 Matlab 中使用 `datetime` 数据类型绘制 `errorbar`
Unable to plot `errorbar` work with `datetime` datatype in Matlab
我想在 x 轴上用 datetime
绘制 errorbar
x = datetime(['21-Aug-2019'; '22-Aug-2019'; '23-Aug-2019']);
y = [100; 110; 130];
figure
plot(x,y, '.')
hold on
errorbar(x, y, 20)
最后一行产生了这个错误——
Error using errorbar (line 76)
Input arguments must be numeric or objects which can be converted to double.
即使是以下也会产生错误
errorbar(datenum(x), y, 20*ones(size(y)))
我正在使用 R2016b
errorbar
不支持 datetime
对象。您可以使用 datenum
和 datetick
。
datenum 会将包含日期的字符串向量转换为双精度向量。现在 x 是一个双向量,它可以在 errorbar
.
中使用
最后使用 datetick
将您的 x 标签转换为人类可读的日期格式。
x = datenum(['21-Aug-2019'; '22-Aug-2019'; '23-Aug-2019']);
y = [100; 110; 130];
figure
hold on
plot(x,y, '.')
errorbar(x, y, [20;20;20])
datetick('x','dd-mmm-YYYY')
我想在 x 轴上用 datetime
绘制 errorbar
x = datetime(['21-Aug-2019'; '22-Aug-2019'; '23-Aug-2019']);
y = [100; 110; 130];
figure
plot(x,y, '.')
hold on
errorbar(x, y, 20)
最后一行产生了这个错误——
Error using errorbar (line 76)
Input arguments must be numeric or objects which can be converted to double.
即使是以下也会产生错误
errorbar(datenum(x), y, 20*ones(size(y)))
我正在使用 R2016b
errorbar
不支持 datetime
对象。您可以使用 datenum
和 datetick
。
datenum 会将包含日期的字符串向量转换为双精度向量。现在 x 是一个双向量,它可以在 errorbar
.
最后使用 datetick
将您的 x 标签转换为人类可读的日期格式。
x = datenum(['21-Aug-2019'; '22-Aug-2019'; '23-Aug-2019']);
y = [100; 110; 130];
figure
hold on
plot(x,y, '.')
errorbar(x, y, [20;20;20])
datetick('x','dd-mmm-YYYY')