比较图形(折线图)

2024-09-29 21:24:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着比较一组图表。Plot我想比较所有的“薄”印刷图和“厚”(-GoalGraphs)印刷图。你知道吗

数据 -所有数据的长度和振幅略有不同(见下文)

Graph a: [315,92,60,46,36,33,29,28,26,24,23,22,20,21,19,19,18,17,18,17,16,17,16,16,17,16,16,17,16,17,16,17,15,17,16,17,16,17,17,16,16,16,16,17,17,16,17,16,16,16,15,16,17,17,16,16,17,16,17,16,17,16,16,17,16,16,16,16,17,16,17,16,17,18,16,18,18,18,18,19,19,20,20,23,30,40,56,69,62,59,55,59,66,78,79,75,84,77,72,73,79,83,86,586]

Graph x: [302,88,56,45,38,34,30,28,25,25,22,22,20,20,18,19,17,18,17,16,17,16,16,16,16,16,16,15,16,17,16,16,17,16,16,17,16,16,16,16,17,16,17,17,16,17,17,17,17,17,18,17,18,19,19,19,20,23,27,37,49,69,64,61,56,55,60,71,79,75,78,87,73,75,78,79,81,590]

目标-我想检查“更薄”图形的形状是否与“更厚”图形的形状相同。因此,即使数据点的位置不匹配正确,我希望算法能够识别模式。你知道吗

解决方案

  1. 我读到了关于插值较厚的图形并将它们与其他图形进行比较的内容。我可以找到一个插值图scipy的解决方案,但是我找不到如何将它与其他图进行比较。我也不确定这是否与数据点“丢失”的图匹配(例如,图比目标图短)
  2. 我吹捧关于马斯钦勒宁或模式识别,我试图找到一些好的陈述点,但领域是巨大的。

  3. 雅科夫·丹提到我试过

import numpy as np

array_a = [315,92,60,46,36,33,29,28,26... ]

array_b = [302,88,56,45,38,34,30,28,25... ]

print(np.correlate(array_a,array_b,'valid'),'valid')

which results in [578559] valid

你能解释一下结果代表什么吗?你知道吗

问题是:-最好的方法是什么?有人能告诉我从哪里开始,或者如何解决这个问题吗?你知道吗


Tags: 数据图形目标plotnp图表解决方案array
1条回答
网友
1楼 · 发布于 2024-09-29 21:24:39

从归一化每个图的振幅开始,然后计算成对互相关。你知道吗

假设有array_aarray_b,其中包含要比较的数据。您可以使用numpy将它们交叉关联起来,如下所示:

抄送=np.关联(数组a,数组b,mode='full')。你知道吗

cc是vector,不是值。cc所包含的是array_aarray_b的移位版本之间的相似性。cc[0]包含array_aarray_b之间的相似性,当array_b移位0时,cc[1]包含array_aarray_b之间的相似性,当array_b移位1时, cc[2]包含array_aarray_b之间的相似性,当array_b移位2时,依此类推。。。当array_barray_a之间存在重叠时,所有可能的移位

看看你能不能从这里拿走

相关问题 更多 >

    热门问题