标签: gnuplot

嵌套函数的 Gnuplot 拟合

f(x)gnuplot 中适合具有下一种形式的函数的正确方法是什么?

f(x) = A*exp(x - B*f(x))
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下方法将其与任何其他函数一样适合:

fit f(x) "data.txt" via A,B 
Run Code Online (Sandbox Code Playgroud)

输出只是一句话:“ stack overflow

我什至不知道如何寻找这个主题,因此任何帮助将不胜感激。

这种函数是如何调用的呢?嵌套?递归?隐式的?

谢谢

gnuplot model-fitting

5
推荐指数
2
解决办法
967
查看次数

显示 gnuplot 默认线型

如何显示 gnuplot 的默认线条样式(对于给定的输出终端)?

我发现如果我定义自己的线条样式,我就可以显示它。但它不显示命令显示的默认样式的规范test

gnuplot> show style line

gnuplot> set style line 44 lt 2 lc rgb "green" lw 2
gnuplot> show style line
        linestyle 44,  linetype 2 linecolor rgb "green"  linewidth 2.000 pointtype 2 pointsize default pointinterval 0
Run Code Online (Sandbox Code Playgroud)

我想查看默认线条样式颜色的规范,以便我可以在包含我的绘图的网页中使用相应的颜色。

请注意,我不是在问“如何绘制特定的线条样式”,或“如何以图形方式显示线条样式的外观”(测试命令)。我问如何列出默认线条样式的(文本)描述。

gnuplot colors

5
推荐指数
1
解决办法
4804
查看次数

在基于时间的线图上绘制布尔值

我正在绘制一个基于时间的线图,并想向其中添加一个布尔数据系列。

是否可以让布尔数据突出显示值为 true 的图形画布的整个高度?

绘图文件:

set datafile separator ","
set terminal pngcairo size 800,400
set title "Solar charge monitor"
set yrange [0:]
set ylabel "V"
set y2range [0:]
set y2label "A"
set y2tics
set xlabel "Date"
set xdata time
set timefmt "%Y-%m-%dT%H:%M:%SZ"
set key left top
set grid
set output "samplePlot.png"
plot "sampleData.csv" using 1:2 with lines lw 2 title 'Batt (V)', \
     "sampleData.csv" using 1:3 with lines lw 2 title 'Solar (V)', \
     "sampleData.csv" using 1:4 with lines lw …
Run Code Online (Sandbox Code Playgroud)

gnuplot

5
推荐指数
1
解决办法
1726
查看次数

使用pointinterval减少点数

有了pointinterval,可以告诉Gnuplot何时在线上插入点.现在,通过将其设置为-1,该行不会通过该点.例如

pi -1

----<>----<>----<>----<>----<>----<>----<>----<>----<>----

pi 2

----<->----------<->----------<->----------<->----------<->----
Run Code Online (Sandbox Code Playgroud)

如您所见,使用-1以外的值将在该点内插入该行.

我想使用正pi数以减少可见点的数量,同时我想看到该线没有经过这一点.像这样的东西

----<>----------<>----------<>----------<>----------<>----
Run Code Online (Sandbox Code Playgroud)

怎么可能?

gnuplot

5
推荐指数
1
解决办法
3218
查看次数

GnuPlot 中带零的对数 y

我的目标是在对数刻度上显示 0 值,略低于 1。

我设法with boxes用对数 Y 刻度绘制了自己的简单直方图 ( )。我的 Y 值是非负整数,最大为 25000。我无法区分 0 和 1 值,因为 Y 刻度从 1 开始。这在数学上是正确的,但我想在 1 的正下方添加一个零。

如果我要编写一个绘制图表的程序,我会向所有数据添加 1,并从 Y 标签中删除 1。有什么技巧可以为我做类似的事情吗?

gnuplot

5
推荐指数
1
解决办法
8491
查看次数

具有多个语句的 Gnuplot 函数

问题

是否可以定义其中定义了多个语句的函数?

语境

我想通过定义函数来自动化创建堆积图所涉及的一些计算。特别是,我希望有类似的东西

mp_setup(bottom_margin, top_margin) = \
    set tmargin 0; \
    set bmargin 0; \
    mp_available_height = 1.0 - top_margin - bottom_margin; \
    mp_current_height = bottom_margin;
mp_plot(plot_height) = \
    mp_plot_size = plot_height * mp_available_height; \
    set origin 0,mp_current_height; \
    set size 1,mp_plot_size; \
    mp_current_height = mp_current_height + mp_plot_size;
Run Code Online (Sandbox Code Playgroud)

预期用途是:

...
set multiplot
mp_setup(0.05, 0.05)

mp_plot(1.0/3.0)
plot ...

mp_plot(2.0/3.0)
plot ...
Run Code Online (Sandbox Code Playgroud)

这应该会自动导致图很好地堆叠,而无需我计算每个图的原点和大小。

问题

上面定义函数的方法不起作用,因为函数定义的解析似乎在第一次出现 ; 时结束;。但这些分号是必要的,以便分隔每个语句(否则,我们的set tmargin 0 set bmargin 0...语句是无效的)。

Gnuplot 似乎也不支持任何分组语句的方式(如{...}C/C++ 中的);或者至少,我从来没有遇到过。 …

gnuplot

5
推荐指数
1
解决办法
2467
查看次数

如何在 gnuplot 中使用其中一列数据作为图例?

我有这样的数据:

# c1 c2 c3
23 b 323
23 g 54
23 a 11
23 c 1
23 d 0
23 e 397
23 f 40
24 b 23
24 g 24
24 a 113
24 c 12
24 d 10
24 e 7
24 f 50
Run Code Online (Sandbox Code Playgroud)

我需要在 x 轴 (23,24) 上使用 c1,在 y 轴上使用 c3 来绘制不同的 c2 值,即每个 c2 值具有不同颜色的多个图表。

在此输入图像描述

gnuplot

5
推荐指数
1
解决办法
1645
查看次数

gnuplot rowstacked 直方图:如何将总和放在条形上方

这个问题与 gnuplot 直方图相关:How to put values on top of bar

我有一个数据文件file.dat

x y1 y2
1 2 3
2 3 4
3 4 5
Run Code Online (Sandbox Code Playgroud)

和 gnuplot:

set style data histogram;
set style histogram rowstacked;
plot newhistogram 'foo', 'file.dat' u 2:xtic(1) t col, '' u 3 t col;
Run Code Online (Sandbox Code Playgroud)

现在我想将第 2 列和第 3 列的总和放在条形上方。显而易见的解决方案

plot newhistogram 'foo', 'file.dat' u 2:xtic(1) t col, '' u 3 t col, \
'' u ($0-1):($2+$3+0.2):($2+$3) notitle w labels font "Arial,8";
Run Code Online (Sandbox Code Playgroud)

将标签放在正确的位置,但计算出的总和是错误的。也就是说,在 …

label gnuplot histogram

5
推荐指数
1
解决办法
656
查看次数

gnuplot - 用不同的颜色为一些抽动或轴编号着色

我正在使用 gnuplot 生成一些 x 轴范围从 0 到 20 的绘图。是否可以将某些抽动或轴编号的颜色设置为与标准黑色不同的颜色?

我只找到了一种方法来将 x 轴中所有数字的颜色更改为红色set xtics textcolor rgb "red"

我需要的是能够将抽动或数字的颜色更改为x=0,3,6,...红色,而所有其他颜色应保持黑色。这可以用 gnuplot 实现吗?

axis gnuplot colors

5
推荐指数
1
解决办法
5192
查看次数

从一个文件绘制多个数据集

注意:我可以控制数据文件的格式,但它必须是单个文件。

我正在尝试使用 gnuplot 在同一个图表上绘制多个数据集。理想情况下我想绘制这样的东西:

data_1 0 0
data_2 0 0
data_1 1 1
data_2 0 1
data_1 2 2
data_2 1 2
Run Code Online (Sandbox Code Playgroud)

等等。在这种情况下,data_1data_2应该是两条单独的曲线。

我还想避免将可能数据集的列表甚至数量放入 gnuplot 脚本中。基本上,我希望它按特定字段对数据点进行“分组”,并将每个组绘制为同一图表上的单独数据集。

作为最后的选择,我可以使用 grep 将原始文件分成每个数据集一个文件,并绘制这些文件(我想这更容易?),但我正在寻找一种使用单个文件来完成此操作的方法。

gnuplot

5
推荐指数
1
解决办法
7267
查看次数

标签 统计

gnuplot ×10

colors ×2

axis ×1

histogram ×1

label ×1

model-fitting ×1