我正在通过 gnuplot 绘制 2 个数据集。第一个的价值从~200万到~300万不等。第二个的值是从 1000 到 2000。
从文件绘图并检查show variables all
GPVAL_Y2_MIN 设置为正确值后,但 GPVAL_Y2_MAX 错误。奇怪的是 GPVAL_Y_MAX 也是错误的,但是如果只绘制第一组,我会得到一个相对较好的值。
我想为yrange和y2range设置不同的范围,但我无法提前告诉可能的值。当然,我想尽可能地填满输出屏幕。
我怎么能那样做?
编辑:添加当前使用的代码
#!/usr/bin/gnuplot
reset
# Get max and min value
plot 'test.dat' every ::1 using 3, '' every ::1 using 4
y1_max = GPVAL_Y_MAX;
y1_min = GPVAL_Y_MIN;
y2_max = GPVAL_Y2_MAX;
y2_min = GPVAL_Y2_MIN;
set terminal png size 1024, 768 #output format png
set format y "%.1s %c"
# show png in a window without save
set output '| display png:-'
set yrange [y1_min:y1_max]
set y2range [y2_min:y2_max]
plot 'test.dat' every ::1 using 3 lt rgb '#FF00FF' title "vsize" with line, \
'' every ::1 using 4 lt rgb '#FF0000' title "rss" with line axes x1y2
如您所见,我首先绘制数据以获取最小值和最大值,然后创建终端。