Dates beside the axis when plotting datetime

I'm trying to plot changes on a specific date of a long intraday data, and want to show (1) only the time and erase the date which appears beside the axis, or (2) change the language of the date beside the axis.

2 个评论

There is a private property named ScaleFormat_I that is under the XAxis property of the axes.
Unfortunately, it does not appear to be possible to set the property, and the details of constructing datetime rulers is hidden inside a .p file toolbox/matlab/graphics/axis/+matlab/+graphics/+axis/+decorator/DatetimeRuler.p
@Walter Roberson: Starting in R2024a, the ScaleFormat_I property has been replaced by a documented (and wirtable) SecondaryLabelFormat property.

请先登录,再进行评论。

 采纳的回答

Starting in R2023b, you can use the new family of secondary label functions (e.g. xsecondarylabel) to toggle the visiblity of the secondary label off.
t = datetime('September 1, 2023'):days(1):(datetime('now')+days(90));
y = cumsum(randn(size(t)));
plot(t,y)
title('Fall 2023')
xsecondarylabel('Visible','off')
You can also use the new functions to add custom secondary labels.
ysecondarylabel('USD, millions')
For more info and demos on secondary labels, see the Graphics and App Building blog article below.

更多回答(1 个)

1) The date information can be hidden by setting the TickLabelsMode to 'manual' on the DatetimeRuler.
ax = gca;
ax.XAxis.TickLabelsMode = 'manual';
2) The default input locale for datetimes can be changed in the Preferences dialog box (i.e. Preferences > Command Window > Datetime format > Locale).

类别

帮助中心File Exchange 中查找有关 Dates and Time 的更多信息

产品

版本

R2020a

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by