使用gnuplot绘制带有颜色和x标记的点
我已经试了几个小时了,但我什么也没得到。 我想做的是: 我有一个模拟的解决方案,其中包含x和y值以及每个点的值 我正在尝试使用gnuplot绘制数据。我希望使用颜色对我的数据点之间的值进行插值,并且这些点本身应标记一个点、一个“x”或类似的标记(圆形边框和内部标签除外): 我一直在尝试一个非常基本的例子。我的数据文件如下所示:使用gnuplot绘制带有颜色和x标记的点,plot,gnuplot,Plot,Gnuplot,我已经试了几个小时了,但我什么也没得到。 我想做的是: 我有一个模拟的解决方案,其中包含x和y值以及每个点的值 我正在尝试使用gnuplot绘制数据。我希望使用颜色对我的数据点之间的值进行插值,并且这些点本身应标记一个点、一个“x”或类似的标记(圆形边框和内部标签除外): 我一直在尝试一个非常基本的例子。我的数据文件如下所示: 1 1 0.1 1 2 0.3 1 3 0.6 2 1 0.5 2 2 0.7 2 3 0.9 3 1 0.2
1 1 0.1
1 2 0.3
1 3 0.6
2 1 0.5
2 2 0.7
2 3 0.9
3 1 0.2
3 2 0.8
3 3 0.7
set terminal postscript eps enhanced color font 'Helvetica,10'
set output './production/image1.eps'
set palette gray
set title "Titel"
#set xrange [1:4]
#set yrange [0:10]
set format y "%.1f"
set format x "%.1f"
set xlabel "x-Achse [Einheit]"
set ylabel "y-Achse [Einheit]" rotate by 90
set view map
set pm3d at b map
set pm3d interpolate 2,2
set dgrid3d 50,50,2
splot "inputDatei.dat" u 1:2:3 linecolor palette
我的gnuplot输入如下:
1 1 0.1
1 2 0.3
1 3 0.6
2 1 0.5
2 2 0.7
2 3 0.9
3 1 0.2
3 2 0.8
3 3 0.7
set terminal postscript eps enhanced color font 'Helvetica,10'
set output './production/image1.eps'
set palette gray
set title "Titel"
#set xrange [1:4]
#set yrange [0:10]
set format y "%.1f"
set format x "%.1f"
set xlabel "x-Achse [Einheit]"
set ylabel "y-Achse [Einheit]" rotate by 90
set view map
set pm3d at b map
set pm3d interpolate 2,2
set dgrid3d 50,50,2
splot "inputDatei.dat" u 1:2:3 linecolor palette
结果如下所示:
1 1 0.1
1 2 0.3
1 3 0.6
2 1 0.5
2 2 0.7
2 3 0.9
3 1 0.2
3 2 0.8
3 3 0.7
set terminal postscript eps enhanced color font 'Helvetica,10'
set output './production/image1.eps'
set palette gray
set title "Titel"
#set xrange [1:4]
#set yrange [0:10]
set format y "%.1f"
set format x "%.1f"
set xlabel "x-Achse [Einheit]"
set ylabel "y-Achse [Einheit]" rotate by 90
set view map
set pm3d at b map
set pm3d interpolate 2,2
set dgrid3d 50,50,2
splot "inputDatei.dat" u 1:2:3 linecolor palette
有几个问题我无法解决:
splot…label”“
,但这并没有解决问题splot…with points
,但这只会在每个网格角显示点,这显然太多了。此外,输入数据可能不是“常规”数据,但点可以在任何地方unset键
,或在plot命令中使用splot…notitle
set table
将插值数据打印到单独的数据块中,然后关闭插值### interpolate data with highlighted datapoints
reset session
$Data <<EOD
1 1 0.1
1 2 0.3
1 3 0.6
2 1 0.5
2 2 0.7
2 3 0.9
2.5 2.5 0.1
3 1 0.2
3 2 0.8
3 3 0.7
EOD
set size square
set view map
set pm3d at b
set pm3d interpolate 2,2
set dgrid3d 50,50,2
set table $DataInterpolated
splot $Data u 1:2:3
unset table
unset dgrid3d
set palette grey
set xrange [0.9:3.1]
set yrange [0.9:3.1]
splot $DataInterpolated u 1:2:3 w pm3d palette notitle, \
$Data u 1:2:3 w p pt 1 lw 2 lc rgb "red" notitle
### end of code
###使用高亮显示的数据点插入数据
重置会话
$Data这正是我要找的!非常感谢。关于第2部分,我以为它会在50x50网格之间插入,但我可以把这个网格变大,这会有类似的效果