gpt4 book ai didi

gnuplot - 在 gnuplot 中标准化直方图箱

转载 作者:行者123 更新时间:2023-12-04 13:09:57 26 4
gpt4 key购买 nike

我正在尝试绘制一个直方图,其 bin 由 bin 中的元素数量归一化。

我正在使用以下

binwidth=5
bin(x,width)=width*floor(x/width) + binwidth/2.0
plot 'file' using (bin($2, binwidth)):($4) smooth freq with boxes

获得基本的直方图,但我希望每个 bin 的值除以 bin 的大小。我如何在 gnuplot 中解决这个问题,或者在必要时使用外部工具?

最佳答案

在 gnuplot 4.4 中,函数具有不同的属性,因为它们可以执行多个连续命令,然后返回一个值(请参阅 gnuplot tricks )这意味着您实际上可以计算 gnuplot 文件中的点数 n,而无需必须提前知道。此代码针对文件“out.dat”运行,其中包含一列:正态分布中的 n 个样本列表:

binwidth = 0.1
set boxwidth binwidth
sum = 0

s(x) = ((sum=sum+1), 0)
bin(x, width) = width*floor(x/width) + binwidth/2.0

plot "out.dat" u ($1):(s($1))
plot "out.dat" u (bin($1, binwidth)):(1.0/(binwidth*sum)) smooth freq w boxes

第一个 plot 语句通读数据文件并为每个点增加 sum 一次,绘制一个零。

第二个 plot 语句实际上使用 sum 的值来规范化直方图。

关于gnuplot - 在 gnuplot 中标准化直方图箱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5787096/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com