ADTK 可视化(visualization)方法汇总
一、plot
绘制时间序列和/或异常。
方法调用
adtk.visualization.plot(ts=None, anomaly=None, curve_group='each', ts_linewidth=0.5,
ts_color=None, ts_alpha=1.0, ts_marker='.', ts_markersize=2,
match_curve_name=True, anomaly_tag='span', anomaly_color=None,
anomaly_alpha=0.3, anomaly_marker='o', anomaly_markersize=4,
freq_as_period=True, axes=None, figsize=None, legend=True)
参数介绍
ts(pandas Series or DataFrame, optional) -- 要绘制的时间序列。
anomaly(list, pandas Series, DataFrame, or (nested) dict of them, optional) -- 要绘制的异常。
举例:
(1) 如果是list,则为异常事件列表(瞬时事件的pandas Timestamp或间隔的pandas Timestamp的 2 元组);
(2) 如果是 pandas Series,则表示正常/异常的二进制系列;
(3) 如果是 pandas DataFrame,每一列都被独立地视为一个二进制序列。
(4) 如果(嵌套)dict,则每个叶节点(list, Series, or DataFrame)都像上面一样独立处理。
curve_group(str or list, optional) -- 要在同一绘图上绘制的曲线组。默认值:'each'。
举例:
(1) 如果是str,'each'表示每个维度都绘制在一个单独的图中,'all'表示所有维度都绘制在同一个图中。
(2) 如果是list,则每个元素对应一个子图,这是要在此子图中绘制的时间序列的名称,或者是名称列表。
例如,[“A”, (“B”, “C”)] 表示两个子图,其中第一个包含系列 A,而第二个包含系列 B 和 C。
ts_linewidth(float or dict, optional) -- 每个时间序列曲线的线宽。默认值:0.5。
举例:
(1) 如果是float,则所有曲线具有相同的线宽。
(2) 如果是dict,key是系列名称,value是该系列的线宽。
ts_color(str or dict, optional) -- 每个时间序列曲线的颜色。默认值:None。
举例:
(1) 如果是str,所有曲线都具有相同的颜色。
(2) 如果是dict,key是系列名称,value是该系列的颜色。
(3) 如果没有,颜色将被自动分配。
ts_alpha(float or dict, optional) -- 每个时间序列曲线的不透明度。默认值:1.0。
举例:
(1) 如果是float,所有曲线都具有相同的不透明度。
(2) 如果是dict,key是系列名称,value是该系列的不透明度。
ts_marker(str or dict, optional) -- 每个时间序列曲线的标记类型。默认: ”。”。
举例:
(1) 如果是str,则所有曲线都具有相同的标记类型。
(2) 如果是dict,key是系列名称,value是该系列的标记类型。
ts_markersize(int or dict, optional) -- 每个时间序列曲线的标记大小。默认值:2。
举例:
(1) 如果是int,则所有曲线都具有相同的标记大小。
(2) 如果是dict,key是系列名称,value是该系列的标记大小。
match_curve_name(bool, optional) -- 是否通过匹配系列名称来绘制具有相应曲线的异常。
如果为 False,则绘制所有曲线的异常。默认值:True。
anomaly_tag(str, or (nested) dict, optional) -- 将异常绘制为水平跨度或曲线上的标记。默认值:“span”。
举例:
(1) 如果是str,'span' 或 'marker',所有异常都用相同类型的标签标记。
(2) 如果(嵌套)dict,它必须具有与(嵌套)dict参数anomaly相同或小于的树结构,它可以为anomaly中的所有叶子节点定义标签。
anomaly_color(str, or (nested) dict, optional) -- 每个异常标记的颜色。默认值:None。
举例:
(1) 如果是str,则所有异常都用相同的颜色标记。
(2) 如果(嵌套)dict,它必须具有与(嵌套)dict参数anomaly相同或小于的树结构,它可以为anomaly中的所有叶节点定义颜色。
(3) 如果没有,颜色将被自动分配。
anomaly_alpha(float, or (nested) dict, optional) -- 每个异常标签的不透明度。仅用于绘制为水平跨度的异常。默认值:0.3。
举例:
(1) 如果是float,则所有异常都用相同的不透明度标记。
(2) 如果(嵌套)dict,它必须具有与(嵌套)dict参数anomaly相同或小于的树结构,它可以定义anomaly中所有叶节点的不透明度。
anomaly_marker(str, or (nested) dict, optional) -- 每个异常标记的标记类型。仅用于在曲线上作为标记绘制的异常。默认值:“o”。
举例:
(1) 如果是str,则所有异常都使用相同类型的标记进行标记。
(2) 如果(嵌套)dict,它必须具有与(嵌套)dict参数anomaly相同或小于的树结构,它可以为anomaly中的所有叶节点定义标记类型。
anomaly_markersize(int, or (nested) dict, optional) -- 每个异常标记的标记大小。仅用于在曲线上作为标记绘制的异常。默认值:4。
举例:
(1) 如果是int,则所有异常都用相同大小的标记进行标记。
(2) 如果(嵌套)dict,它必须具有与(嵌套)dict参数anomaly相同或小于的树结构,它可以定义anomaly中所有叶节点的标记大小。
freq_as_period(bool, optional) -- 是否将具有规则频率的时间索引(即时间索引的属性freq不是None)作为时间间隔。
仅在异常以二进制序列形式给出时使用。默认值:True。
例如:
DatetimeIndex(['2017-01-01', '2017-01-02', '2017-01-03'], dtype='datetime64[ns]', freq='D') 具有每日频率。
如果freq_as_period=True,则索引中的每个时间点代表当天(24 小时)。否则,每个时间点代表当天00:00:00的瞬时时间实例。
axes(matplotlib Axes object, or array of Axes objects, optional) -- 要绘制的轴。Axes 对象的数量应等于绘图的数量。
如果未指定,将自动生成图形轴。默认值:None。
figsize(tuple, optional) -- 图形的大小。如果未指定,则每个子图的大小为 16 x 4。默认值:None。
legend(bool, optional) -- 是否在图中显示图例。默认值:True。