gnuplot - 如何在gnuplot中应用tail命令
问题描述
我在 gnuplot 文件中定义我的两个列数据文件,plot.gnu
.
FILE2='case.out'
我想存储case.out
as的第二列的最后一个值Max
。我试过
Max =`(tail -n 2 FILE2 | awk '{print $2}')`
但它给了我错误
Max =
^
"plot.gnu", line 37: constant expression required
但是,如果我定义文件的确切名称case.out
,而不是用 Max 命令编写FILE2
,那么它会很好地工作。
我的 case.out 是一条线
3.2853 243.4008
3.2936 243.6239
3.3019 243.8089
3.3103 243.9544
3.3186 244.0590
3.3269 244.1221
3.3353 244.1432
我希望Max
命令应该存储244.1432
价值。IE
print Max
应该给 244.1432
解决方案
查看手册和/或 gnuplot 控制台类型help stats
。这里不需要awk。
代码:
stats "case.out" u 2 nooutput
print STATS_max
结果:
244.1432
添加:
请查看手册以了解其stats
工作原理。
代码:
stats "case.out" u 1:2 nooutput
print STATS_min_x, STATS_max_x
print STATS_min_y, STATS_max_y
结果:
3.2853 3.3353
243.4008 244.1432
或者您甚至可以“重命名”统计结果。
代码:
stats "case1.out" u 1:2 nooutput name "First"
print First_min_x, First_max_x
print First_min_y, First_max_y
stats "case2.out" u 1:2 nooutput name "Second"
print Second_min_x, Second_max_x
print Second_min_y, Second_max_y
推荐阅读
- ios - Is it possible to setup mobile ads for an ios app without cocoa pods in xcode?
- vlookup - Using Dates with VLookup and Countifs
- vue.js - vue-cli-service build --target lib disable "use strict"
- python - 多种日期格式的正则表达式
- exoplayer2.x - Exoplayer 在开始播放之前为 1 秒的 bufferForPlaybackMs 加载超过 2 秒的数据。为什么?
- angular - Angular 应用服务的 src 目录没有改变
- php - php-fpm进程内存消耗过多问题
- c# - Winforms:创建配置文件并使用文本框作为输入
- python - 如何将对象从一个存储桶复制到另一个存储桶
- azure-devops - Helm 升级 overrideValues 的格式数组