使用gnuplot 5.0。以下内容对每个脚本都是pereamble:
set terminal epslatex 8 color standalone colortext
问题是gnuplot正在跳过第一行。据我所知,4.6版本解决了类似的问题。
数据文件points.dat
的示例4 4
4 -4
-4 4
-4 -4
跳过第一行(4,4)。因此,gnuplot只显示了三个点,而不是四个点。这个命令是使用
#!/bin/bash
set terminal epslatex 8 color standalone colortext
set output outputFileName
set size .55,.55
set pointsize 3.0
##############
# Line styles
##############
set linestyle 1 lt 5 lw 1 #
set linestyle 2 lt 2 lw 1.5
set linestyle 3 lt 6 lw 1 #
set linestyle 4 lt 3 lw 1
set linestyle 5 lt 2 lw 2 #
set linestyle 6 lt 1 lw 2
##################
# Titles
##################
set title 'Image'
set xlabel '$x$' offset 0,0.5
set ylabel '$y$' offset 2,0
set macros
filename_init = sprintf("%s/image_init.dat",dataFileDirectory)
set key autotitle columnhead
set key horiz
set multiplot
plot
filename_init u 1:2 with points lt 0 pt 1 lw 5 lc rgb "magenta" notitle 'initial'
绕过问题的技巧是复制第一行。这不实用。
答案 0 :(得分:3)
使用set key autotitle columnheader
gnuplot使用第一行中的条目作为关键条目,即使对于您指定了notitle
的图。
为了证明这一点,请使用您发布的points.dat
中的四个数据点考虑以下脚本:
set terminal pngcairo
set output 'foobar.png'
set offsets 1,1,1,1
set key autotitle columnhead
filename_init = 'points.dat'
set multiplot layout 1,2
plot filename_init u 1:2 with points lt 0 pt 1 lw 5 lc rgb "magenta"
set key noautotitle
plot filename_init u 1:2 with points lt 0 pt 1 lw 5 lc rgb "magenta" title 'initial'
unset multiplot
结果是
因此,只需从脚本中删除行set key autotitle columnhead
,然后使用plot ... title 'initial'
。这会给你预期的结果。