gnuplot - 无法获取直方图 - 始终绘制正常函数

发布于 2024-12-19 16:55:03 字数 302 浏览 1 评论 0原文

我想使用原始数据绘制一个简单的直方图。即,我有一个只有一列的文件(为了测试,我只是放了 1000 个正态随机变量,这样我就可以得到一个像直方图一样漂亮的高斯分布)。

我写道:

reset
set style data histogram
set style histogram cluster
plot newhistogram "A", "mydata"

但我得到的只是函数本身(IE 而不是 x 轴作为 bin,它只是从 0 到 1000 的数字,就像我绘制数据文件本身一样)。 如何创建正确的直方图?

I want to plot a simple histogram, using raw data. ie, I have a file with a single column (for testing I just put there 1000 normal random variables so that I would get a nice gaussian like histogram).

I write:

reset
set style data histogram
set style histogram cluster
plot newhistogram "A", "mydata"

But all I get is just the function itself (IE instead of the x axis being the bins, it's just a number from 0 to 1000, just like I plotted the data file itself).
How can I create a proper histogram?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

凡尘雨 2024-12-26 16:55:04

理论

要绘制直方图,您的数据需要如下设置:

<cluster name 1> <data 11> <data 12> ... <data 1n>
<cluster name 2> <data 21> <data 22> ... <data 2n>
...
<cluster name m> <data m1> <data m2> ... <data mn>

然后您可以设置直方图的样式,例如:

set style data histogram
set style histogram cluster
set style fill solid 1.0   #<this only makes the histogram bars filled with a color

使用数据文件 Data.csvn = 6

plot for [i = 2 : 6] "Data.csv" u i:xticlabel(1)

code> 您可以使用示例

Data.csv

col1 0.7585169 0.9014084 0.0530081 0.5387650 0.3958664 0.7884399
col2 0.5492615 0.1042125 0.4758576 0.2488184 0.0039956 0.3210850
col3 0.4668526 0.6453222 0.1703792 0.0229689 0.7916639 0.6115277

Gnuplot 脚本

set style data histogram
set style histogram cluster
set style fill solid 1.0

plot for [i = 2 : 6] "Data.csv" u i:xticlabel(1)

输出

Output

Theory

To plot a histogram your data needs to be setup like this:

<cluster name 1> <data 11> <data 12> ... <data 1n>
<cluster name 2> <data 21> <data 22> ... <data 2n>
...
<cluster name m> <data m1> <data m2> ... <data mn>

Then you can set the style of your histogram with for example:

set style data histogram
set style histogram cluster
set style fill solid 1.0   #<this only makes the histogram bars filled with a color

With a data file Data.csv and n = 6 you can iterate over all values with

plot for [i = 2 : 6] "Data.csv" u i:xticlabel(1)

Example

Data.csv

col1 0.7585169 0.9014084 0.0530081 0.5387650 0.3958664 0.7884399
col2 0.5492615 0.1042125 0.4758576 0.2488184 0.0039956 0.3210850
col3 0.4668526 0.6453222 0.1703792 0.0229689 0.7916639 0.6115277

Gnuplot Script

set style data histogram
set style histogram cluster
set style fill solid 1.0

plot for [i = 2 : 6] "Data.csv" u i:xticlabel(1)

Output

Output

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文