如何在gnuplot中绘制线点,使得线不应该穿过点并且点应该是空心正方形或三角形(不是实心的)

问题描述 投票:0回答:1

我想绘制一个线点图,其中我需要线不穿过点。当点是实心时,线是否穿过并不重要。但是当点型打开的时候,就不太好看了

我尝试过使用一个技巧来打开圆圈,它成功了。我正在分享下面的代码。

 set style circle radius 0.007
plot 'data1.dat' u 1:(($3)**2) w l lw 4 lc "blue" notitle,\
'data1.dat' u 1:(($3)**2) with circle fillcolor "cyan" fs solid 0.2 border linecolor "blue" notitle

现在我尝试使用正方形、三角形和其他形状作为点类型,但我不确定要为这些提供什么命令。

对于正方形,我尝试使用命令:

 set size square

 plot 'data1.dat' u 1:2:(0.001):(0.014) with boxxy fillcolor "red" fs solid 1.0 border linecolor "red" notitle

但这里的问题是盒子的大小不是固定的,而是根据 x 和 y 轴的范围而变化。当轴设置为对数刻度时,情况甚至会变得更糟。

我将不胜感激任何好的解决方案。

plot graph fortran gnuplot line-plot
1个回答
0
投票

您可能正在寻找

pointintervalbox
,请检查
help pointintervalbox
help pointinterval

脚本:

### linespoint without lines through points
reset session

set samples 11
set pointintervalbox 1.6
set key top left

plot '+' u 1:($1+16) w lp pt 4 ps 2       ti "square", \
      '' u 1:($1+14) w lp pt 6 ps 2       ti "circle", \
      '' u 1:($1+12) w lp pt 8 ps 2       ti "triangle", \
      '' u 1:($1+ 6) w lp pt 4 ps 2 pi -1 ti "square", \
      '' u 1:($1+ 4) w lp pt 6 ps 2 pi -1 ti "circle", \
      '' u 1:($1+ 2) w lp pt 8 ps 2 pi -1 ti "triangle", \
### end of script

结果:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.