gpt4 book ai didi

gnuplot - undefined variable : GPVAL_DATA_Y_MIN (Gnuplot)

转载 作者:行者123 更新时间:2023-12-02 21:09:59 26 4
gpt4 key购买 nike

基于这篇文章(我正在使用 gnuplot gnuplot 4.6 patchlevel 1):

gnuplot: max and min values in a range

我正在尝试在 .pg 脚本中使用 set yr [GPVAL_DATA_Y_MIN:GPVAL_DATA_Y_MAX] 来绘制此 .dat 文件中的数据:

100 2
200 4
300 9

但我得到:

undefined variable: GPVAL_DATA_Y_MIN

这是我的脚本:

set terminal png
set output 'img.png'
set xlabel 'x-label'
set ylabel 'y-label'
set boxwidth 0.5
set style fill solid
set yrange [GPVAL_DATA_Y_MIN:GPVAL_DATA_Y_MAX]
plot 'sample.dat' with boxes title ""

有什么想法吗?

最佳答案

gnuplot 定义的变量仅在 plot 命令之后可用(在您链接到的问题中,replot 用于再次绘图)。

基本上你有不同的选择:

  1. 首先绘制到终端未知,然后切换到真实终端,设置范围(现在变量可用),然后重新绘制:

    set xlabel 'x-label'
    set ylabel 'y-label'
    set boxwidth 0.5 relative
    set style fill solid

    set terminal unknown
    plot 'sample.dat' with boxes title ""

    set terminal pngcairo
    set output 'img.png'
    set yrange [GPVAL_DATA_Y_MIN:GPVAL_DATA_Y_MAX]
    replot

    请注意,我使用了 pngcairo 终端,它比 png 终端提供了更好的结果。我使用了set boxwidth 0.5relative

  2. 使用set autoscale来固定范围,而不是设置显式的yrange。您可以使用set offset根据自动缩放值指定边距:

    set autoscale yfix
    # set offset 0,0,0.5,0.5
    plot 'sample.dat' with boxes title ''
  3. 使用stats命令提取最小值和最大值:

    stats 'sample.dat' using 1:2
    set yrange[STATS_min_y:STATS_max_y]
    plot 'sample.dat' with boxes title ''

关于gnuplot - undefined variable : GPVAL_DATA_Y_MIN (Gnuplot),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19646678/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com