首页 > 解决方案 > Python 中的哪些工具可以协助时间序列标签和对齐?

问题描述

目标

我正在寻找一种工具,允许时间序列数据的可视化,用某种类型的矩形选择器标记时间序列的部分,并使用某种滑动窗口手动对齐时间序列。

我设想了一些带有多个时间序列的绘图,以及一个工具栏,可让您标记部分(带有颜色选择器和标签标题的文本框),并以某种方式在绘图上滑动时间序列,然后将一些“滞后校正”和标签保存到一份文件。

当前方法

我在 matplotlib 中看到了跨度选择器,并且我看到了如何使用一些可用的小部件在 matplotlib 之上构建一个 GUI。但是,我认为这可能是一项非常常见的任务,并且想知道是否有任何库/解决方案已经存在于 matplotlib 之上或其他方面?在 matplotlib 中构建 GUI 是最好的方法吗?有什么我可以用来向情节添加一些具有功能的按钮吗?对于此应用程序,我可能会考虑使用其他库吗?

我还在这里进行了一些谷歌搜索和搜索“数据标签和对齐”,但我没有想出太多。

我对基本的 matplotlib 绘图 GUI 也有一些问题,缩放功能留下了一些不足之处。

这是我想象的使用跨度选择器(非常粗糙的atm)实现某些东西的方式。


labels = []

def onselect_function(xmin, xmax):
    print("min:" + str(xmin))
    print("max:" + str(xmax))
    ymin, ymax = ax.get_ylim()

    rect = patches.Rectangle( (xmin, ymin), xmax-xmin, ymax-ymin,linewidth=1, edgecolor='r', facecolor='red', alpha=0.4)
    ax.add_patch(rect)
    labels.append(rect)
    return min, max

span = SpanSelector(
       ax,
       onselect=onselect_function,
       direction='horizontal',
       minspan=0.25,
       useblit=True,
       span_stays=True,
       button=1,
       rectprops={'facecolor':'red','alpha':0.2}
       )

plt.show()

演示图片

标签: pythonvalidationmatplotlibtime-serieslabeling

解决方案


推荐阅读