Plot 如何绘制大型数据集(550.000点),以便识别值中的峰值?

Plot 如何绘制大型数据集(550.000点),以便识别值中的峰值?,plot,gnuplot,Plot,Gnuplot,我有一个550.000点的数据集。其中大约460000个的值在-2到-30之间,而其余的值在0到1550之间。 我试着用gnuplot绘制它们,但是从负值到一些正值的大量跳跃使得它成为一大块我看不到任何东西的线条 那么,我如何绘制这些值,以便识别所有峰值,从负值到正值 数据是一个文件中的一列值,因此解析到任何工具中都应该相当简单(最好是Linux,但我也可以使用Windows)。根据您对90000个尖峰的具体操作,在这里,使用脉冲绘制可能比使用线条绘制要好。下面的示例仅包含20000个数据点和约

我有一个550.000点的数据集。其中大约460000个的值在-2到-30之间,而其余的值在0到1550之间。 我试着用gnuplot绘制它们,但是从负值到一些正值的大量跳跃使得它成为一大块我看不到任何东西的线条

那么,我如何绘制这些值,以便识别所有峰值,从负值到正值


数据是一个文件中的一列值,因此解析到任何工具中都应该相当简单(最好是Linux,但我也可以使用Windows)。

根据您对90000个尖峰的具体操作,在这里,使用脉冲绘制
可能比使用线条绘制
要好。下面的示例仅包含20000个数据点和约17%的峰值

代码:

### "find" spikes
reset session

# create some test data
range1(n) = int(rand(0)*28)-30
range2(n) = int(rand(0)*1550)
data(n) = int(rand(0)+0.17) == 0 ? range1(0) : range2(0)
set print $Data
    do for [i=1:20000] { print data(0) }
set print

plot $Data u 1 w impulses notitle

### end of code
结果:(带放大功能的wxt终端屏幕截图)


嗯,我不确定是否有55万像素宽的显示器;-)。使用交互式终端(例如wxt)进行打印,然后以交互方式放大,怎么样?或者,您也可以使用1个像素作为一个数据点,指示您的两个范围,例如黑色(-2到-30)和黄色(0到1550)。然后,550'000个数据点将是一个大小为1000x550像素的图像。如果您已经确定了这90'000个值,您想做什么?