EventSeries[{{t1,v1},{t2,v2},…,{tn,vn}}]
表示在时间 ti 发生、值为 vi 的一系列事件.
EventSeries[tvspec]
使用时间-值指定n tvspec.
EventSeries[vspec,tspec]
表示一个事件序列,其值由 vspec 给出,时间由 tspec 指定.
EventSeries[vspec,tspec,{com1,com2,…}]
指定事件序列的分量的键 com1、com2、….
EventSeries
EventSeries[{{t1,v1},{t2,v2},…,{tn,vn}}]
表示在时间 ti 发生、值为 vi 的一系列事件.
EventSeries[tvspec]
使用时间-值指定n tvspec.
EventSeries[vspec,tspec]
表示一个事件序列,其值由 vspec 给出,时间由 tspec 指定.
EventSeries[vspec,tspec,{com1,com2,…}]
指定事件序列的分量的键 com1、com2、….
更多信息和选项
- EventSeries 表示一系列时间上的离散事件,每个事件可能具有分量值,但在数据点之间不假定任何值.
- 事件序列通常用于表示离散事件,而非逐渐变化的事件.
- 常见的事件序列包括:
-
自然事件 日出、日/月食、闪电、涨潮、洪水、地震、... 社会事件 金融反转、突破、开始衰退、交通事故、犯罪事件、战争事件、... 技术事件 车辆经过、服务器调用、页面请求、磁盘故障、... 医学事件 生病、心房除颤、心律失常、快速眼动睡眠开始、... - EventSeries 对象可被视为一个含有 "Timestamp" 列和任意数量其他分量列的 Tabular 对象,并且 Tabular[EventSeries[…]] 会将其转换为一个Tabular对象.
- 可以通过寻找诸如过零点、最大值穿越点或其他事件,从一个 TimeSeries 获取一个 EventSeries, TimeSeriesEvents 提供了这样的转换功能.
- 可以通过统计事件的数量、累积值或计算局部事件发生率,从 EventSeries 推导出一个 TimeSeries,而 EventSeriesAccumulate 即可执行这种转换.
- 可给出以下时间-值指定 tvspec:
-
{{t1,v1},{t2,v2},…,{tn,vn}}, 时间-值数据对的集合 timesvalues 分别给出时间和值 Tabular[…] Tabular 对象 - 时间-数值对的集合在输入时无需排序,但在输出时会自动排序,形成一条路径.
- 可给出以下时间指定 tspec:
-
{{t1,t2,…,tn}} 时间列表 
{TabularColumn[…]} 含有时间的 TabularColumn - 此外,如果有数值,可通过以下 tspec 自动计算时间戳:
-
Automatic 对于
个值,时间戳为 
{tmin} 
{tmin,tmax} 对于自动的
,时间戳为 
{tmin,Automatic,dt} 
- 变量 ti、tmin 和 tmax 可以是数字或 DateObject 实例. dt 可以是一个数字、一个时间 Quantity 或一种日期类型,包括 "BusinessDay"、"Weekday"、"Weekend"、"BeginningOfMonth"、"EndOfMonth" 或从 Monday 到 Sunday.
- 可给出以下值指定 vspec:
-
{v1,v2,…,vn} 值列表 <|"com1"{v11,v12,…},…|> 分量 "comi" 的值 {vi1,vi2,…} <||> 没有值 c 显式时间戳的恒定值 c Tabular[…], TabularColumn[…] 含有数值的 Tabular 或 TabularColumn - 对于时间或事件序列 tes,EventSeries[tes,options] 返回一个具有给定选项的 EventSeries 对象.
- EventSeries 对象 es 的属性可以从 es["property"] 获得.
- 可用 es["Properties"] 获取可用属性的列表.
- 可用的时间戳属性包括:
-
"Timestamps" 由时间戳组成的 TabularColumn "FirstTimestamp" 第一个时间戳 "LastTimestamp" 最后一个时间戳 "Dates" 用 DateObject 列表给出的时间戳 "Times" 用 AbsoluteTime 列表给出的时间戳 "FirstDate", "FirstTime" 用 DateObject 或 AbsoluteTime 给出第一个时间戳 "LastDate", "LastTime" 用 DateObject 或 AbsoluteTime 给出最后一个时间戳 - 可用的值属性包括:
-
"Values" 用 Tabular 或 TabularColumn 对象给出值 "NormalValues" 用列表 {v1,…} 给出值 "FirstValue" 第一个时间戳上的值 v1 "LastValue" 最后一个时间戳上的值 "ValueType" 简单时间序列的值的类型 "ComponentKeys" 路径分量的键 "ComponentTypes" 路径分量的类型 - 可用的通用属性包括:
-
"Tabular" 将时间序列转换为 Tabular 对象 "NormalPath" 按顺序排列的时间戳-值数据对{{t1,v1},…} "Path" 用 AbsoluteTime 给出的带有时间戳的路径 "DatePath" 用 DateObject 给出的带有时间戳的路径 "PathLength" 路径的长度 "PathComponents" 将多变量路径拆分为单变量分量 "PathFunction" 作为时间的函数的原始时间序列对象 - Normal[es] 等价于 es["Path"].
- 时
- EventSeries 采用下列选项:
-
ComponentKeys Automatic 路径分量的键 CalendarType Automatic 使用的日历类型 DateGranularity Automatic 日历时间戳的粒度 HolidayCalendar Automatic 使用的节假日日历 TimeZone Automatic 使用的时区 DateFunction Automatic 如何将日期转化为标准格式 MergingFunction Automatic 如何合并重复时间戳的值 MetaInformation <||> 包括额外的元数据信息 MissingDataMethod None 用于缺失值的方法 TemporalRegularity Automatic 是否假定数据是正规的 TimeObservationWindow Automatic 指定时间戳的时间区域 ValueDimensions Automatic 数值的维度 - 设置 ValueDimensions->dim 指定值 vij 的维度为 dim.
范例
打开所有单元 关闭所有单元基本范例 (3)
events = {DateObject[{2022, 1, 1}], DateObject[{2022, 1, 13}], DateObject[{2022, 2, 17}], DateObject[{2022, 3, 2}]};es = EventSeries[<||>, {events}]es["Timestamps"]//NormalTimelinePlot[%, PlotRange -> All]times = {1, 2, 5, 12};
vals = {"a", "b", "c", "d"};es = EventSeries[vals, {times}]Normal[es]es = EventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {{Yesterday, Today, Tomorrow}}, {"a", "b"}]es[Today]es["Values"]Normal[es]范围 (24)
创建 (6)
EventSeries[{{DateObject[{2025, 1, 3}, "Day"], 0.1}, {DateObject[{2025, 1, 10}, "Day"], 0.5}, {DateObject[{2025, 1, 12}, "Day"], 0.3}}]EventSeries[{DateObject[{2025, 1, 3}, "Day"] -> 0.1, DateObject[{2025, 1, 10}, "Day"] -> 0.5, DateObject[{2025, 1, 12}, "Day"] -> 0.3}]EventSeries[<|DateObject[{2025, 1, 3}, "Day"] -> 0.1, DateObject[{2025, 1, 10}, "Day"] -> 0.5, DateObject[{2025, 1, 12}, "Day"] -> 0.3|>]EventSeries[{{0.1, "cat"}, {0.5, "dog"}, {0.3, "fox"}}, {{Yesterday, Today, Tomorrow}}]EventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {{Yesterday, Today, Tomorrow}}, {"a", "b"}]EventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {{Yesterday, Today, Tomorrow}}, ComponentKeys -> {"a", "b"}]EventSeries[{"cat", "dog", "fox", "cow"}, {Yesterday, Automatic, Quantity[2, "Weeks"]}]%//NormalEventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {Yesterday, Automatic, Quantity[2, "Weeks"]}, {"a", "b"}]vals = {19, 16, 9, 3, 7, 2};EventSeries[vals, {10}]Normal[%]vals = {19, 16, 9, 3, 7, 2};EventSeries[vals, {10, 50}]Normal[%]s = {19, 16, 9, 3, 7, 2, 17, 10, 6, 12};es = EventSeries[s, {"2001", "2010"}]MinimumTimeIncrement[es]DateListPlot[es, Filling -> Axis, Joined -> False]提取 (3)
es = EventSeries[RandomDate[3] -> {{0.1, "cat"}, {0.2, "dog"}, {0.3, "fox"}}, ComponentKeys -> {"a", "b"}]es["Values"]es[[All, "a"]]Values[%]Normal[%]es[[All, {"a"}]]Values[%]es[[All, {"b", "a"}]]用 Tabular 对象给出值,创建一个事件序列:
ToTabular[{"a" -> {.1, .2, .3}, "b" -> {"cat", "dog", "fox"}}, "Columns"]es = EventSeries[%, {RandomDate[3, DateGranularity -> "Day"]}]es["Timestamps"]Normal[%]es["Timestamps"]["ElementType"]es = EventSeries[{RGBColor[0.803921568627451, 0.30980392156862746, 0.07058823529411765], RGBColor[1., 0.7254901960784313, 0.09411764705882353], RGBColor[0.9568627450980393, 0.796078431372549, 0.13725490196078433], RGBColor[0.9529411764705882, 0.9803921568627451, 0.5725490196078431], RGBColor[0.4117647058823529, 0.592156862745098, 0.4], RGBColor[0.30980392156862746, 0.47058823529411764, 0.34509803921568627], RGBColor[0.2980392156862745, 0.28627450980392155, 0.5490196078431373], RGBColor[0.27058823529411763, 0.1843137254901961, 0.3764705882352941], RGBColor[0.8784313725490196, 0.10196078431372549, 0.20784313725490197], RGBColor[0.8, 0.058823529411764705, 0.07450980392156863]}, {DateObject[{2025, 1, 1}]}]TimeSeriesWindow[es, {DateObject[{2025, 1, 3}], DateObject[{2025, 1, 7}]}]Normal[%]基本用法 (3)
使用 TimeSeriesInsert 插入缺失值:
es = EventSeries[{7, 10, 17, 22, Missing[], 34, 35, 36, 44, 46}, {1}];es[5]ins = TimeSeriesInsert[es, {5, 27}];ins[5]ListPlot[#, Filling -> Axis]& /@ {es, ins}使用 TimeSeriesRescale 将事件序列的尺度重新调整为 0 到 20 之间:
es = EventSeries[{{0, 3}, {1, 5}, {2, 7}, {3, 2}, {4, 5}}];rs = TimeSeriesRescale[es, {0, 20}];ListPlot[#, Filling -> Axis]& /@ {es, rs}使用 TimeSeriesShift 将序列向前移动 2:
sh = TimeSeriesShift[es, 2];ListPlot[{es, sh}, Filling -> Axis]es1 = EventSeries[{11, 12, 13}, {0}];
es2 = EventSeries[{14, 15, 16}, {0}];es1 - es2%//Normal用 TimeSeriesThread 计算最大的事件序列:
TimeSeriesThread[Max@@#&, {es1, es2}];%//Normal含有值的 EventSeries (6)
v = {3, 8, 4, 11, 9, 2};
t = {1, 3, 5, 7, 8, 10};ListPlot[EventSeries[v, {t}], Filling -> Axis]以 Tabular 对象的形式提供值:
times = {.1, .5, 1, 2};
data = Tabular[Association["RawSchema" -> Association["ColumnProperties" ->
Association["a1" -> Association["ElementType" -> "Integer64"],
"a2" -> Association["ElementType" -> "InertExpression"]], "KeyColumns" -> None,
"Backend" -> "WolframKernel"], "BackendData" ->
Association["ColumnData" -> DataStructure["ColumnTable",
{{TabularColumn[Association["Data" -> {{1, 2, 3, 1}, {}, None}, "ElementType" ->
"Integer64"]], TabularColumn[Association["Data" -> {{a, b,
c, d}, {}, None}, "ElementType" -> "InertExpression",
"CachedOriginalExpression" -> {a, b, c,
d}]]}}]]]];es = EventSeries[times -> data]es["Values"]es = EventSeries[{3, 4, 2, 7, 8, 5, 10}]Sin[es + 1]Normal[%]es ^ 2Normal[%]EventSeries[{{1, Subscript[x, 1]}, {2, Subscript[x, 2]}, {3, Subscript[x, 3]}}] + EventSeries[{{1, Subscript[y, 1]}, {2, Subscript[y, 2]}, {3, Subscript[y, 3]}}]%//Normal用 TimeSeriesThread 计算两个事件序列中的最大值:
es1 = EventSeries[{a, b, c}, {{0, 1, 2}}];
es2 = EventSeries[{d, e, f}, {{0, 1, 2}}];TimeSeriesThread[Max, {es1, es2}]%//Normales = EventSeries[TimeEventSeries`TimestampData[Association["UniformlySpacedQ" -> True, "Count" -> 100,
"Endpoints" -> TabularColumn[Association["Data" -> {{0, 99}, {}, None},
"ElementType" -> "Integer64"]], "MinimumTimeIncrement" -> 1, "Calle ... , 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1,
0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0}, {}, None},
"ElementType" -> "Integer64"]], Association["TimeObservationWindow" -> Interval[{0, 99}]]];tot = TimeSeriesAggregate[es, 10, Total]ListLinePlot[{es, tot}, Joined -> {False, True}, InterpolationOrder -> 0, Filling -> {1 -> 0}, PlotRange -> All]分量键 (6)
EventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {{Yesterday, Today, Tomorrow}}, {"a", "b"}]转换为 Tabular,显示数据:
Tabular[%]EventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {{Yesterday, Today, Tomorrow}}, {"number"}]ColumnKeys[%]EventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {{Yesterday, Today, Tomorrow}}, {}]ColumnKeys[%]分量键参数为 Automatic 时,会保留输入的键:
tab = Tabular[Association["RawSchema" -> Association["ColumnProperties" ->
Association["K1" -> Association["ElementType" -> "Real64"],
"K2" -> Association["ElementType" -> "String"]], "KeyColumns" -> None,
"Backend" -> "WolframKernel"], "Options" -> {},
"BackendData" -> Association["ColumnData" -> DataStructure["ColumnTable",
{{TabularColumn[Association["Data" -> {{0.1, 0.2, 0.3}, {}, None},
"ElementType" -> "Real64"]], TabularColumn[Association[
"Data" -> {{3, {0, 3, 6, 9}, "catdogfox"}, {}, None}, "ElementType" -> "String"]]}}]]]];EventSeries[tab, {{Yesterday, Today, Tomorrow}}, Automatic]Tabular[%]tab = Tabular[Association["RawSchema" -> Association["ColumnProperties" ->
Association["K1" -> Association["ElementType" -> "Real64"],
"K2" -> Association["ElementType" -> "String"]], "KeyColumns" -> None,
"Backend" -> "WolframKernel"], "Options" -> {},
"BackendData" -> Association["ColumnData" -> DataStructure["ColumnTable",
{{TabularColumn[Association["Data" -> {{0.1, 0.2, 0.3}, {}, None},
"ElementType" -> "Real64"]], TabularColumn[Association[
"Data" -> {{3, {0, 3, 6, 9}, "catdogfox"}, {}, None}, "ElementType" -> "String"]]}}]]]];EventSeries[tab, {{Yesterday, Today, Tomorrow}}, {"a", "b"}]Tabular[%]分量键的值为 None 时,输出的事件序列结构简单,没有显式的分量:
tab = Tabular[Association["RawSchema" -> Association["ColumnProperties" ->
Association["K1" -> Association["ElementType" -> "Real64"],
"K2" -> Association["ElementType" -> "String"]], "KeyColumns" -> None,
"Backend" -> "WolframKernel"], "Options" -> {},
"BackendData" -> Association["ColumnData" -> DataStructure["ColumnTable",
{{TabularColumn[Association["Data" -> {{0.1, 0.2, 0.3}, {}, None},
"ElementType" -> "Real64"]], TabularColumn[Association[
"Data" -> {{3, {0, 3, 6, 9}, "catdogfox"}, {}, None}, "ElementType" -> "String"]]}}]]]];EventSeries[tab, {{Yesterday, Today, Tomorrow}}, None]Tabular[%]没有输入键时,Automatic 值将保留简单的输入的分量:
EventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {{Yesterday, Today, Tomorrow}}, Automatic]Tabular[%]选项 (12)
CalendarType (1)
使用 CalendarType 将时间戳指定为特定日历内的日期:
EventSeries[Range[5], {{2014, 2, 14}, Automatic, "Day"}, CalendarType -> "Jewish"]EventSeries[Range[5], {{2014, 2, 14}, Automatic, "Day"}]Component Keys (1)
EventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {{Yesterday, Today, Tomorrow}}]转换为 Tabular,显示数据:
Tabular[%]EventSeries[{{.1, "cat"}, {.2, "dog"}, {.3, "fox"}}, {{Yesterday, Today, Tomorrow}}, ComponentKeys -> {"a", "b"}]Tabular[%]DateFunction (2)
EventSeries[Range[3], {Today}]%["Timestamps"]["ElementType"]用 DateFunction 对输入时间戳的粒度进行转换:
TimeSeries[Range[3], {Today}, DateFunction -> Function[DateObject[#, "Year"]]]%["Timestamps"]["ElementType"]用 DateObject 定义解释模糊日期字符串的函数:
data = {{"06/01/06", 8}, {"07/01/06", 10}, {"08/01/06", 12}, {"09/01/06", 14}, {"10/01/06", 15}, {"11/01/06", 20}};EventSeries[data, DateFunction :> (DateList[{#, {"Month", "Day", "YearShort"}}]&)]EventSeries[data, DateFunction :> (DateList[{#, {"Day", "Month", "YearShort"}}]&)]EventSeries[data, DateFunction :> (DateList[{#, {"YearShort", "Month", "Day"}}]&)]DateGranularity (1)
RandomDate[Quantity[-100, "Years"], 5]es = SolarEclipse[%, "Type"]Normal[es]EventSeries[es, DateGranularity -> "Day"]Normal[%]HolidayCalendar (1)
使用 HolidayCalendar 可视化给定国家中的工作日:
EventSeries[ConstantArray[1, 40], {{2025, 11, 1}, Automatic, "BusinessDay"}, HolidayCalendar -> "UnitedStates"]DateListPlot[%, Joined -> False, Filling -> Axis]MergingFunction (1)
默认情况下,在创建 EventSeries 时,重复的时间戳不会被合并:
times = {0.2, 0.5, 0.5, 0.9, 1.2};
vals = Range[Length[times]];EventSeries[vals, {times}]//NormalEventSeries[vals, {times}, MergingFunction -> Total]//NormalMetaInformation (1)
MissingDataMethod (1)
missd = {2, 1, 3, Missing[], 2, 1, 2, Missing[], 6, 2, 5};es = EventSeries[missd, Automatic]Normal[es]用 MissingDataMethod 将缺失值替换为一个常量:
EventSeries[missd, MissingDataMethod -> {"Constant", c}]Normal[%]EventSeries[missd, MissingDataMethod -> "Mean"]Normal[%]TemporalRegularity (1)
TimeObservationWindow (1)
times = {.2, .3, .5, .8};EventSeries[<||>, {times}]%["TimeObservationWindow"]EventSeries[<||>, {times}, TimeObservationWindow -> Interval[{0, 1}]]%["TimeObservationWindow"]TimeZone (1)
指定 EventSeries 的时区:
es = EventSeries[{1, 2, 3}, {Yesterday}, TimeZone -> -3]es["Dates"]es["TimeZone"]应用 (5)
值得注意的日期 (1)
es = EventSeries[TimeEventSeries`TimestampData[Association["UniformlySpacedQ" -> False,
"Timestamps" -> TabularColumn[Association[
"Data" -> {45, {{NumericArray[{-86876, -85530, -82808, -79914, -77314, -74071, -73953,
-71913, -6832 ... Dwight D. EisenhowerLyndon B. JohnsonRonald ReaganRichard M. NixonGerald FordJohn F. \
KennedyGeorge H.W. BushJimmy CarterJoseph R. BidenDonald TrumpGeorge W. BushBill ClintonBarack \
Obama"}, {}, None}, "ElementType" -> "String"]], Association[]];TimelinePlot[es["Timestamps"]]使用 AssociationThread 绘制带名称的日期:
TimelinePlot[AssociationThread[es["Values"] -> es["Timestamps"]]]DateHistogram[es["Timestamps"], "Month", DateReduction -> "Year"]birthdays = Transpose[{es["Values"], Map[DateValue[#, {"Month", "Day"}]&, es["Timestamps"]]}];Select[GatherBy[birthdays, Last], Length[#] > 1&]地震 (1)
es = EventSeries[TimeEventSeries`TimestampData[Association["UniformlySpacedQ" -> False,
"Timestamps" -> TabularColumn[Association[
"Data" -> {57, {{{1420607228000, 1420607235000, 1421984847000, 1422413000000, 1422874189000,
1423681 ...
39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 55, 56, 57, 58, 59, 60, 61},
"TimeObservationWindow" -> DateInterval[{{{2015, 1, 6, 23, 7, 8.}, {2015, 5, 15, 14, 26, 55.}}},
"Instant", "Gregorian", -6., "UT", Automatic]]];DateListPlot[es, Filling -> 0, Joined -> False]Histogram[es, {"Log", {5.75, 10, 0.25}}, ScalingFunctions -> "Log"]NProbability[m ≥ 7., mes["Values"]]健身 (1)
stepdata = EventSeries[TimeEventSeries`TimestampData[Association["UniformlySpacedQ" -> True, "Count" -> 91,
"Endpoints" -> TabularColumn[Association[
"Data" -> {2, {{{1388556000000, 1396332000000}, {}, None}}, None},
"ElementType" -> "Date"[" ... }, None}, "ElementType" -> TypeSpecifier["Quantity"]["Integer64", "StepsLength"]]],
Association["TimeObservationWindow" -> DateInterval[
{{{2014, 1, 1, 0, 0, 0.}, {2014, 4, 1, 0, 0, 0.}}}, "Instant", "Gregorian", -6., "UT",
Automatic]]];avgstep = Mean@MinMax[Quantity[Interval[{68.96, 97.44}], "Centimeters" / QuantityUnit[stepdata["FirstValue"]]]]cumulative = EventSeriesAccumulate[stepdata -> "Value"] * avgstepUnitConvert[cumulative["LastValue"], "Miles"]distances = (EntityValue[#, "Name"] -> GeoDistance[#, Entity["City", {"Champaign", "Illinois", "UnitedStates"}]])& /@ {Entity["City", {"Champaign", "Illinois", "UnitedStates"}], Entity["City", {"Pittsburgh", "Pennsylvania", "UnitedStates"}], Entity["City", {"Columbus", "Ohio", "UnitedStates"}], Entity["City", {"Indianapolis", "Indiana", "UnitedStates"}]}事件序列的数量值以 QuantityArray 形式给出,且需要 Normal:
crossingpoints = Sort[Table[dist[[1]] -> First[Flatten@Position[Normal[cumulative["Values"]], _ ? (# > dist[[2]]&), {1}, 1]], {dist, distances}], #2[[2]] > #1[[2]]&]DateListPlot[{cumulative, Callout[cumulative["Path"][[#[[2]]]], #[[1]], Above]& /@ crossingpoints}, Joined -> {True, False}, Filling -> Axis, TargetUnits -> "Miles", FrameLabel -> Automatic, PlotRangePadding -> {{Scaled[.1], Automatic}, {Automatic, Automatic}}, PlotLabel -> "Cumulative Distance Walked 2014"]到达 (1)
arrivals = EventSeries[{7, 9, 10, 6, 4, 2, 1, 6, 3, 2, 14, 12, 17, 13, 14, 15, 14, 18, 15, 14, 15, 15, 10, 11}, {0, 23, 1}]ListPlot[arrivals, Filling -> Axis]显示 24 小时周期内的数据,可看出深夜和清晨到达的患者较少:
vals = arrivals["Values"];
hours = Table[Rotate[ToString[k] ~~ ":00", (90Sign[11.9 - k] - k * 360 / 24)Degree], {k, 0, 23}];SectorChart[Transpose[{ConstantArray[1, 24], vals}], SectorOrigin -> {{π / 2, -1}, 8}, ChartLabels -> Placed[hours, "RadialOutside"], ColorFunction -> Function[{angle, radius}, ColorData["Rainbow"][radius]]]自然现象 (1)
FindAstroEvent["MarchEquinox", DateRange[DateObject@{1800}, {2599}, "Year"]]es = TimeSeriesMap[DateValue[#, "DayExact"]&, %]MinMax[es]TimeObject[24FractionalPart[First[%]]]展示它们如何逐年漂移,以及在 400 年周期中为何必须以不同方式处理闰日:
DateListPlot[es, Joined -> False, FrameTicks -> {{{{19, "Mar 19 00:00"}, {19.5, "Mar 19 12:00"}, {20, "Mar 20 00:00"}, {20.5, "Mar 20 12:00"}, {21, "Mar 21 00:00"}, {21.5, "Mar 21 12:00"}}, None}, {Automatic, None}}]属性和关系 (3)
EventSeries[1, {{DateObject[{2022, 1, 1}], DateObject[{2022, 1, 13}], DateObject[{2022, 2, 17}], DateObject[{2022, 3, 2}]}}];Information[%]es = EventSeries[{{1, a}, {2, b}, {3, c}, {1, d}}, {{.1, .5, 1, 2}}, {"c1", "c2"}]es["Properties"]es["Values"]es["ComponentKeys"]es["TimeObservationWindow"]es["Timestamps"]Normal[%]es = EventSeries[RandomDate[3] -> {{0.1, "cat"}, {0.2, "dog"}, {0.3, "fox"}}, ComponentKeys -> {"a", "b"}]es[[All, {"b", "a", "b"}]]%["Values"]巧妙范例 (1)
mp = MoonPhase[DateRange[DateObject[{2027, 3, 1}], DateObject[{2027, 3, 31}], {1, "Day"}], "Icon"]Labeled[Grid[Partition[Labeled[ImageResize[#2, {55, 50}], DateString[#, {"DayShort"}]]&@@@ mp["Path"], 7, 7, 4, ""], Frame -> All], DateString[mp["FirstTime"], {"MonthName", " ", "Year"}], Top]相关指南
-
▪
- 事件序列处理 ▪
- 时间序列处理 ▪
- 使用 Wolfram Data Drop ▪
- 时间与事件序列格式 ▪
- WDF(Wolfram 数据框架) ▪
- 描述性统计分析 ▪
- 时间和事件序列数据源 ▪
- 科学数据分析
文本
Wolfram Research (2014),EventSeries,Wolfram 语言函数,https://reference.wolfram.com/language/ref/EventSeries.html (更新于 2026 年).
CMS
Wolfram 语言. 2014. "EventSeries." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2026. https://reference.wolfram.com/language/ref/EventSeries.html.
APA
Wolfram 语言. (2014). EventSeries. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/EventSeries.html 年
BibTeX
@misc{reference.wolfram_2026_eventseries, author="Wolfram Research", title="{EventSeries}", year="2026", howpublished="\url{https://reference.wolfram.com/language/ref/EventSeries.html}", note=[Accessed: 10-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_eventseries, organization={Wolfram Research}, title={EventSeries}, year={2026}, url={https://reference.wolfram.com/language/ref/EventSeries.html}, note=[Accessed: 10-September-2026]}