如何识别图表中的峰值? [英] How to identify peaks in a chart?

查看:323
本文介绍了如何识别图表中的峰值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好

我在C#中有一个程序,它带有两个向量X(t)和Y(mV),并使用MSChart Visual Studio 2010绘制。绘制的图表显示了几个峰值,会自动识别如下图:



- >每个峰值的开始和结束;

- >在程序上确定峰值数量;

- >确定每个峰值的价值以及它发生的时间。



感谢您的关注。

解决方案

< blockquote>这看起来不是一个简单的问题。



首先,你需要完全隔离数据分析,图表和数据表示。数据表示只应用作输出,绝不能作为数据源。所以,让我们忘记图表并关注数据。



我不知道你的数据的语义;这真的无所谓。一分钟,让我们想象这是一些统计分布。即使不是,您也可以使用为统计学开发的算法。然后,峰值可称为模式的分发: http://en.wikipedia。 org / wiki / Mode_%28statistics%29 [ ^ ]。



你的案例是多模式分配http://en.wikipedia.org/wiki/Multimodal_distribution [ ^ ]。



问题似乎更复杂,因为你没有提供任何关于描述样本数据的函数。一般情况下,问题非常困难。请参阅:

请参阅:

http://www.itwm.fraunhofer.de/fileadmin/ITWM-Media/Abteilungen/BV/Pdf/wirjadi08-branch-and-bound.pdf [ ^ ],

http://www.stat.tamu .edu / ~jchown / NKCreport.pdf [ ^ ],

http://books.google.com/books?id=QKxmYCgHn20C&pg=PA58&lpg=PA58&dq=algorithm+find+modes+of+%22multimodal+distribution%22&source = BL&安培; OTS = 8MVmMHxT-A和SIG = avQVC8T-tRwHS3YS6zi76rAVa0w&安培; HL = EN&安培; SA = X&安培; EI = X9YgU5n0Nabx0gGhrIDgDg&安培; VED = 0CEwQ6AEwBQ#v = onepage&安培; q =算法%20find%20modes%20of%20%22multimodal%20distribution %22& f = false [ ^ ],

HTTP://书籍.google.com /书籍ID = UY-Z3vORugwC&安培; PG = PA54&安培; LPG = PA54&安培; DQ =算法+找到+模式+%22multimodal +分布%的+ 22安培;源= BL&安培; OTS = QKu8TbTVz6&安培; SIG = glZ6BiCjdbXrV_HzVpPDyJL1biw&安培; HL = en& sa = X& ei = X9YgU5n0Nabx0gGhrIDgDg& ved = 0CLIBEOgBMBI #v = onepage& q = algorithm%20find%20modes%20of%20%22multimodal%20distribution%22& f = false [ ^ ],

http://www.peerevaluation.org/data/bbf94b34eb32268ada57a3be5062fe7d/tbme-SShahid-2026734-proof.pdf [ ^ ]。



另见这篇关于一般梭子鱼检测方法的简短评论: http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2631518 [ ^ ]。



可能,某些特殊情况的解决方案会更容易。例如,也许你的长矛是完全孤立的;然后你可以想到一些非常简单的东西,也许是启发式的。



-SA


Hello
I have a program in C# that takes two vectors X (t) and Y (mV), and plots using MSChart Visual Studio 2010. The plotted graph shows several peaks, would automatically identify the following graph:

-> Beginning and end of each peak;
-> Identify on the program the number of peaks;
-> Identify the value of each peak and at what time it occurs.

Thank you for your attention.

解决方案

This is not such a simple problem that it may seem.

First of all, you need to totally isolate the analysis of data, and charts, data presentation. Data presentation should only be used as output, never be a source of data. So, let's forget about charts and focus on data.

I don't know the semantic of your data; it does not really matter. For a minute, let's imaging this is some statistical distribution. Even if it is not, you could possibly use the algorithms developed for statistics. Then the peak could be called a mode of distribution: http://en.wikipedia.org/wiki/Mode_%28statistics%29[^].

Your case would be the case of multi-modal distribution: http://en.wikipedia.org/wiki/Multimodal_distribution[^].

The problem appears to be more complex because you don't provide any assumption on the function describing your sample data. In general case, the problem is quite difficult. Please see:
Please see:
http://www.itwm.fraunhofer.de/fileadmin/ITWM-Media/Abteilungen/BV/Pdf/wirjadi08-branch-and-bound.pdf[^],
http://www.stat.tamu.edu/~jchown/NKCreport.pdf[^],
http://books.google.com/books?id=QKxmYCgHn20C&pg=PA58&lpg=PA58&dq=algorithm+find+modes+of+%22multimodal+distribution%22&source=bl&ots=8MVmMHxT-a&sig=avQVC8T-tRwHS3YS6zi76rAVa0w&hl=en&sa=X&ei=X9YgU5n0Nabx0gGhrIDgDg&ved=0CEwQ6AEwBQ#v=onepage&q=algorithm%20find%20modes%20of%20%22multimodal%20distribution%22&f=false[^],
http://books.google.com/books?id=uY-Z3vORugwC&pg=PA54&lpg=PA54&dq=algorithm+find+modes+of+%22multimodal+distribution%22&source=bl&ots=QKu8TbTVz6&sig=glZ6BiCjdbXrV_HzVpPDyJL1biw&hl=en&sa=X&ei=X9YgU5n0Nabx0gGhrIDgDg&ved=0CLIBEOgBMBI#v=onepage&q=algorithm%20find%20modes%20of%20%22multimodal%20distribution%22&f=false[^],
http://www.peerevaluation.org/data/bbf94b34eb32268ada57a3be5062fe7d/tbme-SShahid-2026734-proof.pdf[^].

See also this short reviews of available approaches to general pike detection: http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2631518[^].

Probably, the solution for some special cases would be much easier. For example, maybe your pikes are thing and well isolated; then you could think of something pretty simple, perhaps heuristic.

—SA


这篇关于如何识别图表中的峰值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆