如何在 gnuplot 的命令行上设置 xrange
How to set xrange on command line in gnuplot
我有几个 gnuplot 脚本可以为我绘制图表。我需要在命令行为每个 gnuplot 脚本设置相同的 xrange 值。
我不想一个一个单独打开。
gnuplot 脚本中的代码(名称:tlakD.gnuplot):
set xdata time
set timefmt "%m/%d/%Y %H:%M" # specify time string format
set xrange datum
set format x "%d/%m/%Y "
命令行尝试:
gnuplot -e "datum='["1/1/19 12:00":"1/5/19 11:59"]'" tlakD.gnuplot
第二次尝试:
我删除了 xrange。
gnuplot 脚本中的代码(名称:tlakD.gnuplot):
set xdata time
set timefmt "%m/%d/%Y %H:%M" # specify time string format
set format x "%d/%m/%Y "
命令行尝试:
gnuplot -e "xrange='["1/1/19 12:00":"1/5/19 11:59"]'" tlakD.gnuplot
我想要的一个想法:
gnuplot -e "xrange='["1/1/19 12:00":"1/5/19 11:59"]'" tlakD.gnuplot ; vlhkosD.gnuplot; teplotaD.gnuplo and many more gnuplots scripts
我想 运行 所有具有相同 xrange 的脚本。
谢谢
您似乎无法在一个变量中指定范围 [...:...]
,但您可以在 2 个单独的字符串变量中指定范围:
gnuplot -e a='"1/1/19 12:00"' -e b='"1/5/19 11:59]"'
set xrange [a:b]
我创建了一个 data.txt
文件,如下所示:
"2/1/2019 10:00:00" 4
"3/1/2019 10:00:00" 8
"4/1/2019 10:00:00" 16
"5/1/2019 10:00:00" 32
我在 gnuplot
中 运行 的命令是:
set timefmt '"%d/%m/%Y %H:%M:%S"'
set xdata time
set xrange ['"1/1/2019 12:00"':'"1/5/2019 11:59"']
plot "data.txt" using 1:2
所以,这意味着我的 bash
命令行将是:
gnuplot -p \
-e "set timefmt '\"%d/%m/%Y %H:%M:%S\"'" \
-e "set xdata time" \
-e "set xrange ['\"1/1/2019 12:00\"':'\"5/1/2019 11:59\"']" \
-e "plot \"data.txt\" using 1:2"
我建议将范围命令放在一个单独的文件中,并在命令中同时调用范围文件和绘图文件。您甚至可以收集一系列范围文件,并在绘图时选择您想要的文件。
gnuplot setrange_1.gp tlakD.gp
这里没有必要使用-e
结构。 gnuplot 将按照给定的顺序执行命令行上列出的每个文件,就好像它们在执行之前已连接成一个更大的文件一样。
我有几个 gnuplot 脚本可以为我绘制图表。我需要在命令行为每个 gnuplot 脚本设置相同的 xrange 值。 我不想一个一个单独打开。
gnuplot 脚本中的代码(名称:tlakD.gnuplot):
set xdata time
set timefmt "%m/%d/%Y %H:%M" # specify time string format
set xrange datum
set format x "%d/%m/%Y "
命令行尝试:
gnuplot -e "datum='["1/1/19 12:00":"1/5/19 11:59"]'" tlakD.gnuplot
第二次尝试: 我删除了 xrange。
gnuplot 脚本中的代码(名称:tlakD.gnuplot):
set xdata time
set timefmt "%m/%d/%Y %H:%M" # specify time string format
set format x "%d/%m/%Y "
命令行尝试:
gnuplot -e "xrange='["1/1/19 12:00":"1/5/19 11:59"]'" tlakD.gnuplot
我想要的一个想法:
gnuplot -e "xrange='["1/1/19 12:00":"1/5/19 11:59"]'" tlakD.gnuplot ; vlhkosD.gnuplot; teplotaD.gnuplo and many more gnuplots scripts
我想 运行 所有具有相同 xrange 的脚本。
谢谢
您似乎无法在一个变量中指定范围 [...:...]
,但您可以在 2 个单独的字符串变量中指定范围:
gnuplot -e a='"1/1/19 12:00"' -e b='"1/5/19 11:59]"'
set xrange [a:b]
我创建了一个 data.txt
文件,如下所示:
"2/1/2019 10:00:00" 4
"3/1/2019 10:00:00" 8
"4/1/2019 10:00:00" 16
"5/1/2019 10:00:00" 32
我在 gnuplot
中 运行 的命令是:
set timefmt '"%d/%m/%Y %H:%M:%S"'
set xdata time
set xrange ['"1/1/2019 12:00"':'"1/5/2019 11:59"']
plot "data.txt" using 1:2
所以,这意味着我的 bash
命令行将是:
gnuplot -p \
-e "set timefmt '\"%d/%m/%Y %H:%M:%S\"'" \
-e "set xdata time" \
-e "set xrange ['\"1/1/2019 12:00\"':'\"5/1/2019 11:59\"']" \
-e "plot \"data.txt\" using 1:2"
我建议将范围命令放在一个单独的文件中,并在命令中同时调用范围文件和绘图文件。您甚至可以收集一系列范围文件,并在绘图时选择您想要的文件。
gnuplot setrange_1.gp tlakD.gp
这里没有必要使用-e
结构。 gnuplot 将按照给定的顺序执行命令行上列出的每个文件,就好像它们在执行之前已连接成一个更大的文件一样。