python - 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()
解决方案
推荐阅读
- java - 尝试使用流口水创建规则并在运行时触发但不起作用
- python-3.x - Python列表用变量替换项目并填充剩余部分
- python - 如何在 Pandas 中将 A1、A10、A11、...、A2 等行顺序更改为 A1、A2、...、A10、A11
- visual-studio-code - VS 代码背景裁剪?
- python - Numba CUDA 共享内存矩阵乘法
- mysql - 导入 CSV MySQL Workbench Mac Catalina 非常慢
- android - Android 11 Preview - Facebook 登录不起作用
- excel - 使用 MS Excel VBA 获取具有不同行大小的多列的列总计的最佳方法
- javascript - 使用js代码生成svg,它总是返回相同的结果?
- java - Spring boot JPA 批量插入异常处理