我有一个包含 3 列的数据文件,我想用其中的 2 个进行绘图。但我想使用第三个条件来从图中排除或不排除该线(例如,如果 $3 < 10 数据线无效)。我知道缺少设置数据文件,但这种情况有些奇怪,我不知道该怎么做。任何帮助表示赞赏...
我正在寻找一种在绘图上添加小图标的方法,例如 OK 或 KO 符号、标志、箭头等。
到目前为止,我已经看到了一个示例,您可以在其中添加背景图像,但实际上没有任何内容允许我在绘图上设置一个点,就像我可以使用标签所做的那样,并在那里应用一个图标。
有没有办法这样做?
我正在使用w labels修饰符绘制数据。
是否可以更改这些标签的字体大小和/或旋转它们?
我一直在浏览文档,但找不到任何可以做到这一点的东西。
有set label rotate,set label font但那些似乎并不适用于所有标签的一般规则。
谢谢。
我需要使用 gnuplot 在同一个图中绘制两个数据文件。第一个数据文件是这样的:
2015-02-10 10.1
2015-02-15 12.1
2015-02-20 16.1
2015-02-25 14.1
...
Run Code Online (Sandbox Code Playgroud)
第二个数据文件就像
2015-02-10-10:00 12.5
2015-02-10-15:00 21.4
2015-02-15-12:30 08.3
2015-02-15-22:00 09.3
2015-02-20-08:15 12.8
2015-02-20-17:32 16.7
2015-02-25-07:20 14.0
2015-02-25-21:39 14.5
..
Run Code Online (Sandbox Code Playgroud)
要解析第一个数据文件,timefmt应该设置为"%Y-%m-%d",对于第二个文件,应该设置为"%Y-%m-%d-%H:%M". 但是,由于两个数据文件应该一起绘制,我该如何timefmt正确定义?
我想在 Gnuplot 中创建一个像箭头线这样的流线,我已经有了我需要的数据点,所以我认为我的问题与这篇文章所说的不同,与这篇文章不同,因为我已经获得了 stramlines 所需的数据.
我所做的是这样的:
所以红线是表示流场的矢量,绿线是流线,用来引导读者判断流量的方向。我的目标是在 GNUPLOT 中绘制所有蓝色大箭头。我已经知道如何像这篇文章一样绘制中间箭头,但是如果我想沿着线条绘制更多箭头,我需要做什么代码?
更详细地说,我如何绘制这样的图:
我在这里提供我的数据文件:
Velocity.txt用于矢量流场数据为“index,X,Y,vx,vy,particle-numbers”
line.txt用于简化数据为“X,Y”
我的 gnu 文件爆了:
set terminal postscript eps size 108,16 enhanced font "Arial-Bold,100"
set output 'vector.eps'
unset key
set tics
set colorbox
set border 0
set xtics 2
#set xlabel 'x'
#set ylabel 'y'
set xrange [0:108]
set yrange [0:16]
#set cbrange [0:40]
set nolabel
set style line 4 lt 2 lc rgb "green" lw 2
plot 'velcoity.txt' u 2:3:(250*$4):(250*$5) …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 gnuplot 中重新创建此图(相册中的第二个图像),但在重现他们在 x 轴上使用的比例时遇到了问题。这段代码是我迄今为止的进展:
#!/usr/local/bin/gnuplot
reset
# set svg output
set terminal svg size 410,250 fname 'Verdana, Helvetica, Arial, sans-serif' \
fsize '9' rounded dashed
set output 'out.svg'
set xlabel 'x axis label'
set ylabel 'y axis label'
set xrange [0:200000]
set yrange [0:30000]
set xtics (\
'0' 0, '10K' 10000 ,'50K' 50000, '100K' 100000, '200K' 200000)
set ytics 2000
plot 'data.dat' using 1:2 t 'Example line' w lp ls 1, \
'' u 1:3 t 'Another …Run Code Online (Sandbox Code Playgroud) 我正在从传感器捕获数据,并将其输出到 .dat 文件中。我想使用 gnuplot 将此信息导出到绘图中,并使其完全自主地仅显示过去 7 天收集的数据(没有硬编码日期,应使用该time()功能根据系统时间进行调整)
如果我对日期范围进行硬编码,即set xrange ["07-25-16":"08-25-16"],我不会收到任何错误并且代码/绘图运行顺利。但是,如果我尝试使用该time()函数绘制过去 7 天的时间函数,则会收到以下错误:
line 0: illegal month
Run Code Online (Sandbox Code Playgroud)
这是我从传感器 (output.dat) 收集的数据:
07-21-2015 15:21 0 0 0
07-23-2016 15:21 0 0 0
07-29-2016 15:21 0 1 -1
07-29-2016 15:21 1 1 0
07-29-2016 15:21 2 1 1
07-29-2016 15:21 3 1 2
07-29-2016 15:21 3 2 1
07-29-2016 15:21 4 2 2
07-29-2016 15:21 5 2 3
07-29-2016 15:21 5 3 2
07-29-2016 15:21 5 4 1 …Run Code Online (Sandbox Code Playgroud) 我使用 gnuplot 已经有一段时间了。最近开始使用它来创建报告以发送给客户。我试图用我的绘图脚本进行试验,但结果并不多。
我的问题很简单,如何让 Gnuplot 中的图表看起来非常棒?想想 D3/chartjs 输出进行比较。
我理解“很棒”是主观的。但是在这方面的一般指针会很有帮助!
例如,我需要在此代码中添加什么来激活抗锯齿?
set terminal gif animate delay 5 size 400, 250
set output "example.gif"
a = 0
do for [i=1:100] {
a = a + 0.1
plot sin(x + a)
}
Run Code Online (Sandbox Code Playgroud)
我需要更改 gnuplot 文件夹的某些文件吗?我正在使用 gnuplot 的 5.2 Windows 版本。
新的 gnuplot (5.x) 具有新的逻辑语法,但我无法使用“else if”语句。例如:
if(flag==1){
plot sin(x)
}
else{
plot cos(x)
}
Run Code Online (Sandbox Code Playgroud)
确实有效,但是:
if(flag==1){
plot sin(x)
}
else if(flag==2){
plot cos(x)
}
else if(flag==3){
plot tan(x)
}
Run Code Online (Sandbox Code Playgroud)
才不是。我尝试了 {} 的多种组合以及“if”和“else”的放置,但都无济于事。有谁知道如何在 gnuplot 5.x 中正确实现“else if”?
gnuplot 指南 ( http://www.bersch.net/gnuplot-doc/if.html ) 没有使用“else if”的新逻辑语法示例,但确实有使用旧语法的示例,但我宁愿避免使用老的。
gnuplot ×10
plot ×2
animated-gif ×1
animation ×1
antialiasing ×1
gif ×1
if-statement ×1
logic ×1