主要内容

情节的日期和时间

这个例子显示了如何创建线情节被存储为的日期和时间datetime持续时间数组。的datetime数据类型表示的时间点,如8月24日,2020年,10:50:30点。,而持续时间数据类型表示的时间长度,如12小时和30分钟。大多数绘图函数接受datetime持续时间数组作为x- - - - - -,y- - - - - -,z坐标,蜱虫值与适当的日期和时间单位。您可以指定自己的轴的限制和蜱虫值使用datetime持续时间值。您还可以更改标记值的格式来显示您所选择的日期和时间单位。建议的数据显示datetime持续时间光标位置的值在一个阴谋,你可以将这些值导出到工作空间变量。当你读数据从一个电子表格或逗号分隔值(CSV)文件,您可以包括日期和时间数据在你的阴谋。

日期和时间数据

你可以画出datetime持续时间数组没有将他们转换为数值型数组。大多数绘图函数接受datetime持续时间数组作为输入参数。

例如,一个数据集datetime值的x设在和数值y设在。的x坐标是datetime在2021年6月和7月值每一天。情节自动显示值与一个适当的格式x设在。在这种情况下,适当的名称和格式显示月天数字。

XDates = [datetime (2021、6 1:30) datetime (2021 7 1:31)];YNumsForXDates =罪(0:0.1:6);情节(XDates YNumsForXDates)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

同样,策划一个数据集持续时间值的x设在。创建一个持续时间数组以秒为单位,使用函数。

XTimes =秒(0:120);YNumsForXTimes = cos (0:0.05:6);情节(XTimes YNumsForXTimes)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

指定轴的限制

当你改变限制一个阴谋,蜱虫值显示datetime持续时间值自动更新。你可以更新限制交互地或通过调用xlim,ylim,或zlim函数对应的轴。指定新的限制datetime持续时间数组中。如果你改变限制放大或缩小的足够远,蜱虫的值可以显示其他日期和时间组件,不仅新标记值。

例如,绘制XDatesYNumsForXDates数组。然后改变x设在限制6月20日和7月7日,2021年xlim。情节显示新的标记值。

情节(XDates YNumsForXDates) xlim ([datetime (“2021-06-20”)datetime (“2021-07-07”)))

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

改变x设在限制6月20日和6月22日,2021年。蜱虫值显示小时和分钟组件hh: mm格式,因为情节足够放大显示较小的时间单位x设在。

xlim ([datetime (“2021-06-20”)datetime (“2021-06-22”)))

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

指定标记的值

你不需要改变轴的极限蜱虫的价值观。相反,您可以指定您自己的标记值沿x- - - - - -,y,或z相互重合使用xticks,yticks,或zticks功能。作为一个指定点值datetime持续时间数组中。

例如,绘制XTimesYNumsForXTimes数组。然后指定标记的值在0、60和120秒通过使用xticks

情节(XTimes YNumsForXTimes) xticks(秒([0 60 120]))

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

指定标记的格式

绘图函数使用默认格式显示datetime持续时间值作为标记值。覆盖的格式标记值在一个轴,使用xtickformat,ytickformat,或ztickformat功能。

例如,情节XDatesYNumsForXDates。指定一个点值格式显示年、月和日数据通过使用xtickformat

情节(XDates YNumsForXDates) xtickformat (“yyyy-MM-dd”)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

作为一种替代方法,您也可以打电话情节DatetimeTickFormatDurationTickFormat名称-值参数。例如,这个调用情节函数创建相同的情节。

情节(XDates YNumsForXDates,“DatetimeTickFormat”,“yyyy-MM-dd”)

然而,这些名称-值参数可以使用情节只有函数。您可以使用等功能xtickformat调用绘图函数后,等散射,阀杆,楼梯

轴属性存储日期和时间

轴的限制,蜱虫标签的位置,x- - - - - -,y- - - - - -,z值为datetime持续时间数组的情节也存储为属性的对象。这些属性代表那些方面的情节。

  • XLim,YLim,ZLim

  • XTick,YTick,ZTick

  • XData,YData,ZData

例如,XLimXTick属性的情节XDatesYNumsForXDates商店datetime值。得到了对象的情节和显示这些属性。

甘氨胆酸ax =;ax.XLim
ans =1 x2 datetime2021-06-01 2021-08-03
ax.XTick
ans =1 x5 datetime2021-06-01 2021-06-15 2021-06-29 2021-06-15 2021-06-01

出口和转换数据提示值

当你点击一个阴谋,你创建一个数据提示在光标位置显示它x- - -y坐标。数据显示数值以及技巧datetime持续时间值。然而,当您导出数据光标到工作区,坐标作为一对数值。将游标数据导出datetime持续时间值,使用num2ruler函数。

例如,情节XDatesYNumsForXDates。然后创建一个数据提示点击阴谋。

DatetimeDataTip.png

将游标数据导出到工作区,右键单击数据提示和选择游标数据导出到工作区。这个动作出口光标在工作区中数据结构。

cursor_info =结构体字段:目标:(1×1线)位置:0.5985 [25]DataIndex: 26

cursor_info.Position字段表示光标数据作为一对数值。的对象与情节的相关信息需要转换的数值x协调到一个datetime价值。得到了对象的阴谋。然后通过数值x协调和x设在从对象num2ruler

甘氨胆酸ax =;datetimePosition = num2ruler (cursor_info.Position (1) ax.XAxis) datetimePosition = datetime截止2021年6月26日

你不需要转换数字y协调,cursor_info.Position (2)因为y值在这个阴谋是数字。

情节从文件的日期和时间

数据文件(如电子表格和CSV文件通常存储日期和时间格式化文本。当你读到这些文件的数据,可以将文本表示日期和时间datetime持续时间数组。然后您可以创建块数据。

例如,创建一个块的数据示例数据文件outages.csv。这个CSV文件包含六列的数据。两列包含文本表示日期和时间。

地区,OutageTime、损失、客户、RestorationTime导致西南,2002-02-01 12:18,458.9772218,1820159.482,2002-02-07 16:50,冬季风暴东南部,2003-01-23 00:49,530.1399497,212035.3001,冬季风暴东南部,2003-02-07 21:15,289.4035493,142938.6282,2003-02-17 08:14,冬季风暴……

建议从CSV文件读取数据的方法是使用readtable函数。这个函数从一个文件中读取数据,并返回一个表。

读到outages.csv。的readtable函数自动转换中的文本OutageTimeRestorationTimedatetime数组。表示数字的列(损失客户)读入数字数组。其余列读取字符串。表存储数据的列outages.csv表变量有相同的名称。最后,对行进行排序T的日期和时间OutageTime通过使用sortrows函数。如果一个表没有按时间排序,那么它是一种最佳实践的时间策划或者分析数据。

T = readtable (“outages.csv”,“TextType”,“字符串”);T = sortrows (T)“OutageTime”)
T =1468×6表地区OutageTime损失客户RestorationTime引起___________ ___________ ______ __________ ___________ _____________,“西南”2002-02-01 12:18 458.98 - 1.8202 e + 06 2002-02-01 16:50“暴风雪”“中西部”2002-03-05 17:53 96.563 - 2.8666 e + 05 2002-03-05 41“风”“中西部”2002-03-16 06:18 186.44 - 2.1275 e + 05 2002-03-16 23:23“暴风”“中西部”2002-03-26 01:59 388.04 - 5.6422 e + 05 2002-03-26 19:55“暴风雪”“中西部”23141 16:46 2002-04-20南NaT“未知”“西南”2002-05-08 20:34 50.732 34481 2002-05-08二二21“雷雨”“中西部”2002-05-18 11:04 1389.1 - 1.3447 e + 05 2002-05-18 01:22“未知”“东北”2002-05-20 10:57 9116.6 - 2.4983 e + 06 2002-05-20 22“未知”“东南”2002-05-27 09:44 237.28 - 1.7101 e + 05年2002-05-27 16:19“风”“东南”2002-06-02 16:11:0 0 2002-06-02 05:55“能源紧急”“西方”2002-06-06 19:28 311.86南2002-06-06 00:51“设备故障”“东南”2002-06-17 23:01 42.542 39877 2002-06-17 23:49“雷雨”“中西部”2002-07-01 04:33 60650 - 203.94 2002-07-01 14:54“暴风”“中西部”2002-07-01 08:18 100.71 - 1.8116 e + 05年2002-07-01十一33“暴风”“中西部”2002-07-10 01:49 168.02南2002-07-10十七20“设备故障”“东南”2002-07-14 21:32 90.83 60133 2002-07-14 23:53⋮“雷雨”

您可以访问表变量通过使用点符号,指的是一个表变量的名字。点符号,你可以把表像数组变量。

情节对停机时间的功率损耗。从表中访问这些变量,使用点符号。

情节(T.OutageTime T.Loss)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

计算时间的停电和阴谋反对OutageTime。计算时间,减去OutageTimeRestorationTime。结果,OutageDuration,是一个持续时间数组,因为算术datetime值产生长度的时间作为输出。这些故障持续时间很长,所以改变的格式y从小时年通过设在标记值ytickformat。一些中断显然持续多年表明可能有几个可疑文件中的数据值。根据你计划如何分析数据,在某些方面你可以再加工或删除包含坏值的行。

OutageDuration = T。RestorationTime- T.OutageTime; plot(T.OutageTime,OutageDuration) ytickformat(“y”)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

另请参阅

||||||||

相关的话题