gnuplot中是否有一个盲终端用于在没有屏幕图的情况下采集x/y最小值/最大值

gnuplot中是否有一个盲终端用于在没有屏幕图的情况下采集x/y最小值/最大值,gnuplot,Gnuplot,使用一个流程,首先进行“临时”绘图,然后收集“GPVAL\u DATA\u Y\u MIN/MAX”变量以确定绘图大小。然后我将实际的绘图发送到PNG文件中。“scratch”绘图命令仍然会在屏幕上闪烁,这是我想要避免的。我正在做一个“帮助设置终端”来查看可用的终端(在我的gnuplot会话中),并在寻找类似“blind”或“null”的内容,但找不到任何类似的内容。有这样的终点站吗?它叫什么名字?(使用gnuplot 4.6补丁级别7) 谢谢, Gert尝试将输出发送到空设备: 在Linux上

使用一个流程,首先进行“临时”绘图,然后收集“GPVAL\u DATA\u Y\u MIN/MAX”变量以确定绘图大小。然后我将实际的绘图发送到PNG文件中。“scratch”绘图命令仍然会在屏幕上闪烁,这是我想要避免的。我正在做一个“帮助设置终端”来查看可用的终端(在我的gnuplot会话中),并在寻找类似“blind”或“null”的内容,但找不到任何类似的内容。有这样的终点站吗?它叫什么名字?(使用gnuplot 4.6补丁级别7)

谢谢,
Gert

尝试将输出发送到空设备:

在Linux上:

set terminal png
set output "/dev/null"
plot sin(x)
set output "real_output.png"
...
在Windows上:

terminal png
set output "nul"
plot sin(x)
set output "real_output.png"
...

阅读或,尤其是有关Windows的详细信息。

由于我不知道您实际如何使用这些值,这里有一些不同的可能性:

  • Gnuplot的“盲”终端称为
    unknown

    set terminal unknown
    plot "data.dat"
    
    set terminal pngcairo
    set output "output.png"
    set yrange[GPVAL_DATA_Y_MIN:GPVAL_DATA_Y_MAX] 
    replot
    

    这种方法的变体是将
    set terminal unknown
    调用包装在
    set terminal push
    set terminal pop
    中,以返回上一个终端

  • 使用
    stats
    命令:

    f = "data.dat"
    stats f using 2 nooutput
    
    set yrange [STATS_min:STATS_max]
    plot f
    
  • 如果计算时不需要这些值,而只是为了使Y范围适合实际数据范围,则使用

    set autoscale yfix
    

    可能与
    设置偏移量相结合


  • 设置终端未知
    。你为什么需要这些价值观?您还可以使用
    stats
    命令或
    set autoscale yfix
    …如果Christoph将其作为答案发送,我会给他一个接受的答案标签。设置为“未知”是最好的解决方案,因为它消除了仍将在maji的答案中发生的渲染。所以运行时效率更高。是的,#1就是我所做的,轴有20%的缩放倍数,这样曲线的顶部就不会撞到帧的顶部#2“统计数据”也会这样做。“stats”是一个较新的构造吗?我不记得以前的版本了。
    set autoscale yfixmax