如何获取数据点的平均数?

问题描述 投票:0回答:3

这是我的数据文件:

12100 4592

14400 5000

16900 6443

12100 4479

14400 5393

16900 5969

12100 4605

14400 5353

16900 6268

我想要 3 次测试的平均值并画一条线。例如,我想用 gnuplot 绘制这 3 个点:

12100 4558,66

14400 5248

16900 6226,66

第二个值是 3 次测试的平均值。

gnuplot average points
3个回答
1
投票

如果所有点的测试数量相同,则可以借助

smooth frequency
选项轻松完成:

plot "datafile.txt" u 1:($2/3) smooth frequency with points

在 gnuplot 中输入

help smooth frequency
以获取有关此选项的更多信息。


0
投票

简短的答案是使用

smooth unique
(检查
help smooth unique

plot FILE u 1:2 smooth unique

smooth unique选项使得数据在x上单调;点与 相同的 x 值被具有平均值的单个点替换 y 值。然后用直线连接所得点 片段。

有了这个,您就可以独立于不同数量的相同 x 值。

选项

smooth unique
至少从 gnuplot 4.2.6 (2009) 开始就存在,可能更早。

以下示例将数据、平均值和均值绘制为标签。 由于它使用数据块,因此需要 gnuplot 5.0。对于 gnuplot 4.x 版本,您必须从数据文件读取数据/向数据文件写入数据,但不幸的是,存在一个“错误”,将附加数字写入文件,这在绘制标签时是不需要的。

脚本:(适用于 gnuplot>=5.0)

### plot average of data
reset session

$Data <<EOD
12100 4592
14400 5000
16900 6443
12100 4479
14400 5393
16900 5969
12100 4605
14400 5353
16900 6268
EOD

set table $AVG
    plot $Data u 1:2 smooth unique
unset table

set key top left noautotitle
set offset graph 0.1, graph 0.1, graph 0.1, graph 0.1

plot $Data u 1:2 w p pt 7 lc rgb "red" ti "Data", \
        '' u 1:2 smooth unique w lp pt 7 lw 2 lc rgb "blue" ti "Average", \
      $AVG u 1:2:2 w labels offset 0,2.5
### end of script

结果:


0
投票

schema版本:“2.2” 描述:“本文档从 EC2 实例中获取所有关联卷的快照。” 阶段:

  • 获取实例ID 脚步:
    • 描述实例: 名称:get_instance_ids 输入: 过滤器: - 名称:州名 值:[运行]
    • 对于每个: 名称:loop_through_instances 表达式:$.Instances 参数: - 名称:实例 ID 值:“<< $.InstanceId >>”
    • 描述卷: 名称:按实例 ID 获取卷 输入: 过滤器: - 名称:附件.实例 ID 值:[<< .step.parameters.InstanceId >>]
    • 对于每个: 名称:loop_through_volumes 表达式:$.Volumes 参数: - 名称:卷 ID 值:“<< .step.parameters.VolumeId >>”
    • 创建快照: 名称:创建快照 输入: 卷 ID:“<< .step.parameters.VolumeId >>” 描述:“卷快照 << .step.parameters.VolumeId >>”
© www.soinside.com 2019 - 2024. All rights reserved.